26
2021
05

c和指针笔记----------更新中

实型

float:4字节,有效数字7位

double:8字节,有效数字15~16位

注意:

1.有效数字的位数是指:整数部分+小数部分

2.所有的浮点运算都是以双精度进行的,即使仅含float单精度量运算的表达式,也要先转换成double型,再作运算。        char型和short型参与运算时,必须先转换成int型

整型

1.在标准的c语言中规定,long长度只要等于或者大于int就行,所以不同编译器可能设置的long长度不一样

既长整形至少应该和整形一样长,而整形至少应该和短整形一样长

2.short和short int是同一个类型,short是short int的简写,long和long int是同一个类型,short是short int的简写

3.int ,short,long这些都是默认为有符号的

4.头文件limits.h说明了各种不同的整数类型的特点

5.头文件float.h定义了浮点类型的大小那些

6.浮点数字面值在缺省情况下都是double类型,除非它后面跟一个l,f那些来表示类型

7.如果函数不显式地声明返回值的类型,它就默认返回整形;参数的类型缺省的话也会默认为整形

8.unsigned 是无符号bai数。 b 是有符号数负数,无符号数和有du符号数混合运算 要注意 你到底 想计算什么zhi。默认,把有符dao号数内容 当成无符号数解释 计算。-20 就当 0xffffffec (4294967276)

指针

1.原程序中: char *string[] = {"hello","the","world"};

改为: char *string[] = {"hello","the","world", NULL};

C中字符串常量通常是ASCIIZ字符串,尽管没有显式去写,编译时会自动在字符串末尾加个'\0'. 例如存储字符串"the",编译器为它分配四个字节,依次存入: 't' , 'h', 'e' , '\0'.
然而对于指针却不会做类似的处理.
因此,只能自已做个显式的字符串结束标记

2.*和++的优先级是一样的,且方向都是从右向左的,所以*p++和*(p++)作用相同。

3.指针加上一个整数的结果是另一个指针。

微信扫码关注

更新实时通知

« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。