第1个回答 2020-05-27
char str[10]={"ABCDE"},占用内存10个字节,前6个字节的值是"ABCDE\0",字符串不一定占用全部字符数组的内存,因此最后会加'\0'(0值)表示字符串的实际结尾。该字符串实际占据数组的前6个单元;
char str[]={“ABCDE”},会自动根据字符串长度确定占用内存的大小,为6个字节。
用strlen()函数去查看,结果都是5。
整数相除,余数舍去,只有整数部分。
同类型运算,从左至右顺次进行。
x/y=3/2=1,x/y/z=1/1=1,
取整之后,还是1,化成浮点数之后是1.000000.
如果想得到小数结果,有两种做法:
(1)在运算之前,先强制类型转换:(float x)/(float y)/(float z);
(2)运算的第一个数是浮点数:1.0*x/y/z;
运算时会自动选定第一个数的格式,进行计算。