《Linux C编程一站式学习》——常量、变量和表达式notes
、字符和字符串区别:字符常量用单引号括起来,例如'}',例如'a\n',这时虽然单引号括了两个字符,但实际上
只表示一个字符。
2、打印一个%,代码如下:
3、floor、ceil取整规则,自动类型转换
1 #include <stdio.h> 2 #include <math.h> 3 int main(void){ 4 float x = 17/4.0; 5 printf("%f\n", x); 6 printf("%f\n", floor(x)); 7 printf("%f\n", ceil(x)); 8 printf("%d\n", ceil(4.25)); 9 printf("%f\n", ceil(4.25)); 10 return 0; 11 }
执行结果:
引入math库,gcc编译时会报错:
需要加上-lm参数,主要是因为使用math.h中声明的库函数时,gcc命令行必须加-lm选项,如果没有加就会出现上面的错误,原因在于数学函数位于libm.so库文件中,-lm选项告诉编译器,我们程序中用到的数学函数要到这个库文件里找。我们平时用到的大部分函数(例如printf)位于libc.so库文件中,使用libc.so中的库函数在编译时不需要加-lc选项,是因为这个选项是gcc默认的选项。所以在使用gcc命令去执行c文件时,如果使用了math.h中的库函数的时候,一定要加-lm选项。