c语言(数据类型)(2)

本文介绍了C语言中的基本概念,包括数据类型(如无符号/有符号、结构体、联合体、枚举和空类型),控制语句(如循环、break、continue、goto和return),以及存储类型关键字、常量、变量和整形的相关知识。同时提到了内存区域划分和输入处理的安全问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.数据类型

(除int long等):unsigned 无符号 signed 有符号(一般不写)

复合数据类型:

struct 结构体

union 联合体(使用同一地址内存的不同表示方式,也称作共用体)

enum 枚举

void 空类型(函数无返回值,函数无参数)

2.控制语句

在循环中:break结束整个循环。continue结束本次循环,进入下次循环

goto:无条件跳转语句(可以在任何位置跳转)

return:1.在函数中结束本函数 2.在主函数中结束程序执行(结束程序)

(显示的黑屏幕一闪而过,将system("pause");加在return0;前面,可以将屏幕暂停)

3.存储类型关键字

auto:定义局部变量使用,即定义函数内部变量使用  int a;

extern:声明(进行声明时候,此声明关键字可以不写)

register:寄存器变量(建议性指令,即有就存放,没有就不存放)

static:定义静态量

(1)静态数据:静态局部变量,静态全局变量

(2)静态函数

const:定义常量(只读变量)

4.其他关键字

sizeof:查看数据类型的大小(字节数)

typedef:定义别名

(1)对一个已经存在的数据类型起别名

(2)定义函数指针

注意: 在定义一个变量后,会在计算机内部开辟出此变量的数据类型所需要的内存空间,准备存放数据!!!

size E:\vs2022\day01\helloworld.exe 计算文件所需要的内存空间

代码分为四个区:代码区  数据区  栈区  堆区

上面从左到右依次是:代码区  数据区  未初始化数据区(链接库的时候需要一些空间)

后面两个是总体大小(十进制显示,十六进制显示)

《基址》作为内存对象用的(找到基址之后可以随意修改数据)

5.常量

常量:程序运行过程中不能改变的值

(1)使用约束变量的方式定义,此种定义方法是局部常量,只能在定义的函数内使用,不能全局使用。

const 数据类型 变量名 = 值

(2)宏定义 此种定义的常量是全局常量,可以在任何函数使用

#define 常量名(大写)值

6. 变量

变量:在程序运行过程中,可以修改的量

数据类型 变量名 = 值

注意:变量名和常量名也称作标识符(不能使用系统关键字,首字母是字母或者下划线,后面可以是数字、下划线、字母,并且区分大小写)

7.整形:int

(1)整形变量的打印格式

%d:输出一个有符号的10进制int类型

%o:输出一个8进制的int类型

%x:输出一个16进制的int类型,字母以小写输出

%X:输出一个16进制的int类型,字母以大写输出

%u:输出一个无符号的10进制int类型

8.scanf安全问题解决办法

(1)在代码的第一行输入 #define  _CRT_SECURE_NO_WARNINGS 

(2)在代码的任意位置输入(函数之外,头文件那块) #pragma warning(disable:4996)

9.整形大小和取值范围

使用sizeof进行查看数据类型的大小(单位是字节)

short 2字节

int 4字节

sizeof的返回值为size_t类型(此处的size_t是无符号int类型的别名)

注意:size_t是一个无符号的int类型(unsigned int)

注意: 长整型和整型的区别

整型一直都是4字节

长整型在window系统下是4字节,在(32位)Linux下是4字节,在(64位)Linux下是8字节

long long > long >= int >= short  

使用键盘输入scanf(“%c”,&ch);注意:在%c不要加回车,输入的会被吞噬掉,电脑接收不到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值