| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> C++知识库 -> c语言初识 数据类型 -> 正文阅读 |
|
[C++知识库]c语言初识 数据类型 |
c语言中,数据分为不同类型,本文简单介绍各种数据类型。 1.基本类型C语言为我们提供的内置类型,简单的数据类型,可通过以下测试判断其所占内存大小。
int与long类型的大小关系是sizeof(int)<=sizeof(long),sizeof(long)根据编译器不同,为4或8。
2.构造类型程序员自己定义的类型,相对复杂。 2.1 结构体结构是一些值的集合,这些值被统称为成员变量。结构的每个成员可以是不同类型的变量。所以结构可以用来描述一个复杂的对象,其中成员即是对象的各种属性。
struct是结构体关键字,tag是结构体标签名,member_list是定义成员变量的列表,value_list是用该结构体创建的全局变量的列表,可缺省。
上述书籍的例子中,b1、b2和b3是完全等价的全局变量,b4是局部变量。 2.2 枚举类型枚举就是一一列举,很多数据可以列举出来,如:性别、星期……
enum是枚举关键字,Tag是枚举对象名,con1、con2是枚举常量列表。 枚举常量相当于整型常量,默认从0开始赋值,然后累加。 2.3 共用体联合体包含一系列成员,这些成员共用同一块空间,所以联合体也叫共用体。 ?union是共用体关键字,共用体内成员共用一个空间,共用体变量的大小最小是最大成员的大小。
当最大成员大小不够最大对齐数的整数倍时,对齐到最大对齐数的整数倍处。 因为联合体所有成员共用一块空间,故算出最大成员大小后,只在最后需要再浪费几个字节的空间以对齐到最大对齐数的整数倍。 3.指针类型C语言的指针类型包括两方面的信息: 一是地址,存放在指针变量中; 二是类型信息,关乎于读写的长度,没有存储在指针变量中,位于用该指针读写时的mov指令中,不同的读写长度对应的mov指令不同。 //定义int类型的指针 int* p = &i; 指针为什么要有类型? 因为指针存储的是一个内存地址,然而我们只根据一个地址读取对应的数据,但是你不知道什么时候读取完毕,也就导致了数据丢失,所以我们需要指定指针类型,确定什么时候读取完毕 。 指针也是一个变量,它自己占据一个4个字节的地址空间(由于程序的寻址空间是2^32次方,即4GB,所以用4个字节表示指针就已经能指向任何程序能够寻址到的空间了,所以指针的大小为4字节),他的值是另一个东西的地址,这个东西可以是普通变量,结构体,还可以是个函数等等。 4.空类型 void?void的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。 void型的使用: ????????a.定义函数返回值类型,参数类型
? ? ? ? b.与指针结合使用定义变量
|
|
C++知识库 最新文章 |
【C++】友元、嵌套类、异常、RTTI、类型转换 |
通讯录的思路与实现(C语言) |
C++PrimerPlus 第七章 函数-C++的编程模块( |
Problem C: 算法9-9~9-12:平衡二叉树的基本 |
MSVC C++ UTF-8编程 |
C++进阶 多态原理 |
简单string类c++实现 |
我的年度总结 |
【C语言】以深厚地基筑伟岸高楼-基础篇(六 |
c语言常见错误合集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 12:55:56- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |