C语言基础学习之链表与共同体

数组:

数据结构---操作时候的特点:

优势:随机访问(存取)方便

不足:插入数据删除数据不方便

链式数据结构--链表

struct stu sl; // s1struct stu s2; // s2struct stu s3; //s3

s1-->s2-->s3

特点:

优势:增力和删除数据方便劣势:存取不方便

一般情况下数据节点都是开在堆上的

创建空链表:

也可以

头插法:

头删法:

共用体 (union)

struct demo

{

  int a;

  char b;

  short c;

};

共用体技术:

      可以让,多个变量,共用 同一块内存空间

//联合体

语法:

union 共用体名

{

    成员列表

};

大小看成员最大字节。

可以通过union查看电脑大小端

注意:

  1.共用体初始化时,只能给一个值,这个值默认时给到第一个成员的

  2.共用体空间中数据,取决最后一次给到值

    赋值的时候,每个成员只能影响,自己对应的字节

  3.共用体类型

    可以定义变量

    可以定义数组

    可以定义指针

    可以做函数参数 和 返回值

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/678792.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024年手机能做的赚钱软件有哪些?整理了八个手机能做的正规赚钱软件分享

在这个指尖滑动的时代,手机不仅仅是通讯工具,更是我们探索财富的钥匙。你是否曾幻想过,躺在沙发上,轻轻一滑,就能让钱包鼓起来? 今天,就让我们一起来探索那些隐藏在手机里的赚钱秘笈&#xff0c…

ubuntu系统 kubeadm方式搭建k8s集群

服务器环境与要求: 三台服务器 k8s-master01 192.168.26.130 操作系统: Ubuntu20.04 k8s-woker01 192.168.26.140 操作系统: Ubuntu20.04 k8s-woker02 192.168.26.150 操作系统: Ubuntu20.04 最低配置:2…

C++——IO流

C语言的输入和输出 C语言中我们用到的最频繁的输入输出方式就是scanf ()与printf()。 scanf(): 从标准输入设备(键 盘)读取数据,并将值存放在变量中。printf(): 将指定的文字/字符串输出到标准输出设备(屏幕)。 注意宽度输出和精度输出控制。C语言借助了相应的缓冲…

信息学奥赛初赛天天练-19-挑战程序阅读-探索因数、所有因数平和、质数的奥秘

PDF文档公众号回复关键字:20240604 1 2023 CSP-J 阅读程序3 阅读程序(程序输入不超过数组成字符串定义的范围:判断题正确填√,错误填;除特殊说明外,判断题1.5分,选择题3分,共计40分&#xff…

Windows上配置完整Linux开发环境(六):安装CentOS

1、CentOS vs. Ubuntu 基础和发行周期: CentOS 是基于Red Hat Enterprise Linux (RHEL)的社区版。它与RHEL共享源代码,因此提供与RHEL类似的稳定性。CentOS的版本更新不频繁,通常在RHEL发布新版本后才推出,保持长期支持周期&#…

《STM32Cube高效开发教程基础篇》第7章/案例7.1外部中断示例EXTI方式检测按键

文章目录 目的新建项目CudeMX设置CudeIDE编码 目的 采用外部中断方式检验4个按键的输入 新建项目 在案例6_1基础上另存为Demo7_1EXIT CudeMX设置 CudeIDE编码

MobileNetV4实战:使用MobileNetV4实现图像分类任务(一)

文章目录 摘要安装包安装timm 数据增强Cutout和MixupEMA项目结构计算mean和std生成数据集 摘要 论文链接:https://arxiv.org/pdf/2404.10518 MobileNetV4,作为新一代移动设备神经网络架构,凭借其创新的通用倒置瓶颈UIB块和Mobile MQA注意力块…

Java程序策——Java连接数据库保姆级教程(超详细步骤)

【Java程序策】——连接数据库 目录 ​编辑 一:在数据库中建立一个表(student表) 1.1:进入mysql 1.2:建立一个“数据库成员” 1.3:建立一个表(student表) 1.4:给表…

Springboot+vue二手房交易管理系统

Springbootvue二手房交易管理系统,项目用mybatis与数据库,数据库为mysql,16个表结构。有问题直接加我询问,我会一直在线哒。 功能如下: 房东管理 用户管理 房源信息管理(可预约和查看评论) 看房…

C语言 指针——函数指针的典型应用:通用排序

目录 编程实现升序和降序排序 如果不使用函数指针编程… 使用函数指针编写一个通用的排序函数 小结 编程实现升序和降序排序 如果不使用函数指针编程… 使用函数指针编写一个通用的排序函数 小结 正确理解指针的概念  指针是一种特殊的数据类型  指针类型的变量&am…

【动态规划】状态压缩dp

发现dp调试打最后二维dp表非常有用 1.吃奶酪类 先出状态&#xff0c;再走到哪 dp[1][0]0;for(int i3;i<maxn;i){//状态 for(int j1;j<n;j){//走过j if(i&(1<<j)){ for(int k0;k<n;k){//刚才在k dp[i][j]; } } } } P1433 吃奶酪 - 洛谷 | 计算机科学教育新生…

ARP欺骗的原理与详细步骤

ARP是什么&#xff1a; 我还记得在计算机网络课程当中&#xff0c;学过ARP协议&#xff0c;ARP是地址转换协议&#xff0c;是链路层的协议&#xff0c;是硬件与上层之间的接口&#xff0c;同时对上层提供服务。在局域网中主机与主机之间不能直接通过IP地址进行通信&#xff0c…

做ozon开单前需要多少钱,做ozon开单前需要多少钱

在电子商务的浪潮中&#xff0c;OZON平台以其独特的商业模式和市场定位&#xff0c;吸引了众多创业者和商家的目光。然而&#xff0c;在决定投身OZON平台之前&#xff0c;对开店成本的全面了解至关重要。本文将详细解析OZON开店前的各项费用&#xff0c;并提供一些高效投入的策…

go的反射和断言

在go中对于一个变量&#xff0c;主要包含两个信息变量类型&#xff08;type&#xff09;和变量值&#xff08;value&#xff09; 可以通过reflect包在运行的时候动态获取变量信息&#xff0c;并能够进行操作 对于Type可以通过reflect.TypeOf()获取到变量的类型信息 reflect.Ty…

网络服务DHCP的安装

DHCP的安装 检查并且安装dhcp有关软件包 rpm -qc dhcp #检查是否存在dhcp yum install -y dhcp #进行yum安装查看系统的配置文件 切换到对应目录查看相关文件配置&#xff0c;发现是空目录。 将官方提供的example复制到原配置文件中 cp /usr/share/doc/dhcp-4.2.5/dhcpd.…

This Python interpreter is in a conda environment

今天在查看python版本的时候出现警告 Warning: This Python interpreter is in a conda environment, but the environment has not been activated. Libraries may fail to load. To activate this environment please see https://conda.io/activation 这个警告意味着你…

Windows家庭版 WSL2非C盘详细安装配置与WSL代理设置+WSL基础环境CUDA安装

1 WSL2 配置 1.1 WSL 开启 注意&#xff1a;需要在windows功能中开启“Hyper-V”和“适用于Linux的Windows子系统”功能 但是&#xff01;windows家庭版&#xff08;windows home&#xff09;是默认没有Hyper-V功能的&#xff0c;自己手动安装&#xff1a; 创建一个记事本&a…

DeepDriving | 基于YOLOv8分割模型实现垃圾识别

本文来源公众号“DeepDriving”&#xff0c;仅用于学术分享&#xff0c;侵权删&#xff0c;干货满满。 原文链接&#xff1a;基于YOLOv8分割模型实现垃圾识别 0. 引言 YOLOv8是Ultralytics开源的一个非常火的AI算法&#xff0c;目前支持目标检测、实例分割、姿态估计等任务。…

Java List数据结构与常用方法

1.1 数据结构概述 Java的集合框架其实就是对数据结构的封装&#xff0c;在学习集合框架之前&#xff0c;有必要先了解下数据结构。 1.1.1 什么是数据结构 所谓数据结构&#xff0c;其实就是计算机存储、组织数据的方式。 数据结构是用来分析研究数据存储操作的&#xff0c;其实…

【Mac】Keyboard Maestro for Mac(键盘大师)软件介绍及安装教程

软件介绍 Keyboard Maestro for mac&#xff08;键盘大师&#xff09;是目前Mac OS平台上功能最为齐全的Mac键盘增强工具&#xff0c;它能将你的Keyboard作用发挥到极致&#xff0c;可以根据命令或计划自动执行简单或复杂的应用程序或网站&#xff0c;文本或图像。使用Keyboar…