《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选项。

 

 

 

 

posted on 2018-11-19 14:03  DavidXu2014  阅读(256)  评论(0编辑  收藏  举报