新网创想网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

c语言小结-创新互联

数据类型
数据类型中文解释大小(字节)(一个字节8个比特位)
char字符数据类型1
short短整型2
int整型4
long长整型4或8
longlong更长整型8
float单精度浮点数8
double双精度浮点数8

sizeof(数据类型)查看数据类型大小。

成都网站建设哪家好,找创新互联公司!专注于网页设计、重庆网站建设、微信开发、微信平台小程序开发、集团企业网站设计等服务项目。核心团队均拥有互联网行业多年经验,服务众多知名企业客户;涵盖的客户类型包括:垃圾桶等众多领域,积累了大量丰富的经验,同时也获得了客户的一致好评!
#includeint main()
{printf("%d\n", sizeof(char));
    printf("%d\n", sizeof(short));
    printf("%d\n", sizeof(int));
    printf("%d\n", sizeof(long));
    printf("%d\n", sizeof(long long));
    printf("%d\n", sizeof(float));
    printf("%d\n", sizeof(double));
    printf("%d\n", sizeof(long double));
    return 0;
}
变量 常量

一般地,定义声明一个值所具备的属性可以归纳为变量还是常量。常量定义完不可修改,变量相反。

属性位置作用域生命周期定义方法
局部变量函数体内所在的局部范围一般是函数体内进作用域开始,出作用域结束常规定义
全局变量主函数外整个工程范围整个程序的生命周期常规定义
字面常量任意根据是局部还是全局根据是局部还是全局常规定义
修饰的常变量(带变量属性的常量,本质是变量)任意根据局部还是全局根据局部还是全局const [数据类型] [常量名称] = [常量值]
标识符常量同上同上同上define [标识符常量名称] [常量值]
枚举常量任意根据局部还是全局根据局部还是全局enum [常量名称] = {常量1,常量2,常量3,…}

同名时,局部变量优先

字符串 转义字符

由双引号阔起来的一串字符。
字符串结束标志是\0的转义字符,转义字符部分不计入字符串内容

转义字符含义
\?防止解析为三字母词
\’防止’转义
\"防止”“转移
\\防止\转义
\a警告字符
\b退格符
\f进纸符
换行
\r回车
\t水平制表符
\v垂直制表符
\ddd或\\dd8或\\d8d一至三个八进制数字
\xdd两个十六进制数字
//程序输出什么?
#includeint main()
{printf("%d\n", strlen("abcdef"));//输出6
    // \6被解析成一个转义字符,其中8不是八进制所以没解析
    printf("%d\n", strlen("c:\test\682\test.c"));//输出15
    printf("%d\n", strlen("c:\test\x3544444.c"));//输出9
    return 0;
}
选择if,循环while、for、do … while

开始 选择 处理 结束 循环

数组

一组相同类型的元素组合

int arr[10] = {32, 523, 24, 32, 43, 5, 4, 52, 25, 523}

数组0开始
数组下标

操作符
操作符表达
算数操作符+ - * / %
移位操作符>><<
位操作符& ^ |
赋值操作符= += -= *= /= &= ^=
单目操作符! 逻辑反操作;- 负值;+ 正值;& 取地址;sizeof 操作数的类型长度(以字节为单位);~ 对一个数的二进制按位取反;-- 前置、后置–++ 前置、后置++;* 间接访问操作符(解引用操作符);(类型) 强制类型转换
关系操作符>;>=;<;<=;!= 用于测试“不相等”== 用于测试“相等”
逻辑操作符&& 逻辑与;|| 逻辑或
条件操作符exp1 ? exp2 : exp3
逗号表达式exp1, exp2, exp3, …expN
下标引用、函数调用和结构成员访问操作符[] () . ->
常见关键字

auto break case char const continue define do double else enum
extern float for goto if int long register return short signed
sizeof static struct switch typedef union unsigned void volatile while
下文仅对加粗进行了扩展

define 定义常量或宏
static 修饰局部变量,让局部变量直到程序结束生命周期才结束。修饰全局变量让其在其他源文件失效。修饰函数使得其只能在本源文件内使用。

指针

内存是存储器,为了更好使用内存将内存划分为小内存单元,每个内存单元的大小是一个字节。为了更好访问每个单元就给内存单元进行编号,即内存单元地址。

每个类型变量或常量都是存储在内存单元中
数据类型和内存单元
存储过程:

int num = 10;
int *p;//p为整型变量指针。*为间接访问操作符(单目操作符)
p = #//&取地址操作符(单目操作符)

使用指针:

#includeint main()
{int num = 10;//为常量10申请地址
	int *p = #//*为间接访问操作符。为p申请地址,并将上行地址取出并赋值给申请的地址,相当于两个地址进行关联
	printf("%d\n", p);//地址14089504(每次结果不同),此时的地址是常量num的地址
	*p = 20;//将20赋值给p,p的地址依然是常量num的地址
	printf("%d\n", p);//14089504
	return 0;
}

指针变量的大小取决于地址的大小。32平台32bit,4个字节。64平台64bit,8个字节。
测试:

#includeint main()
{printf("%d\n", sizeof(char *));//4或8(64位)
    printf("%d\n", sizeof(short *));//4或8(64位)
    printf("%d\n", sizeof(int *));//4或8(64位)
    printf("%d\n", sizeof(double *));//4或8(64位)
    return 0;
}
结构体 struct
#includeint main()
{struct Stu
{char name[20];
int age;
char sex[5];
char id[15];
};
//结构体初始化
struct Stu s = {"zhangsan", 20, "male", "202222"};
printf("name = %s age = %d sex = %s id = %s\n", s.name, s.age, s.sex, s.id);//.为结构成员访问操作符
struct Stu *ps = &s;//*为间接访问操作符, &取地址。
printf("name = %s", ps->name);
return 0;
}
输出
//name = zhangsan age = 20 sex = male id = 202222
//name = zhangsan

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站标题:c语言小结-创新互联
本文地址:http://wjwzjz.com/article/eggsd.html
在线咨询
服务热线
服务热线:028-86922220
TOP