定义一个指针,系统默认给其赋随机值而不是地址;
以下代码在不同编译器运行结果不同
int main(void)
{
double i =20.0;
double j =i/7;
if(j*7.0 == i)
printf("Equal\n");
else
printf("Not equal\n");
return 0;
}
VS:相等;GCC:不相等;因此要考虑精度;
判断一个浮点数是否等于0:
#define EXP 0.00001 //设置精度
int main(void)
{
double i = 0.1;
if((d>-EXP)&&(d<EXP))
printf("equal 0;\n");
else
printf(" Not equal 0;\n");
return 0;
}
小数在内存中的保存形式[floatt/double都不能精确表、表示]
(1+1*2^-m+...1*2^-n)*2^k
5.5//十进制
101.1//二进制
1.011*2^2//科学计数法
符号 阶级K 有效数字
(32位)float [1] [8] [23]
符号 阶级K 小数点后有效位
(64位)double [1] [11] [52]
switch(必须为整形表达式),case后是常量表达式;
goto语句的标签不能跨函数跳转/跨函数跳转参考《C专家编程》//我没找到;
EOF:end of file 文件结束标志;
#define EOF -1 //在命令输入框中 按ctrl+z linux下按ctrl+d;
0:stdin:标准输入流;
1:stdout:标准输出流;
2:stderr:标准错误输出流;
睡眠函数
#include <windows.h> int main(void) { Sleep(1000);//单位是毫秒,linux下单位是秒 system("pause"); return 0; }