DAN Blog

代码界的女王,Bug 的克星.

fgetc()函数的返回值

C语言中fgetc()函数的返回值 函数原型: FILE *fp; fgetc(fp); 返回值:读取成功返回读取的字节数,当读取到文件的末尾返回EOF; EOF : 是一个宏,C中宏定义 #define EOF -1; 为什么不直接返回-1,而是返回EOF呢? 既然返回的是一个字节,为什么返回值确用4字节的int表示,不用unsigned char这1个字节类型...

返回值的宏定义问题

返回值NULL和-1区别

区别 当用到文件IO以及标准IO时,有的返回EOF,例如fgetc, 有的返回NULL,例如fopen, 有的返回-1,例如open。 实际上,这个返回值和函数的针对描述的类型有关,例如fgetc正确时返回一个字符,当读取完成后返回错误,EOF代表一个字符,在宏定义中#define EOF (-1), fopen返回值类型是,文件指针,所以是NULL, 在宏定义中#define NULL 0...

malloc

malloc常见的那些事儿

函数调用时 传参 传 地址 归其原因 实参和形参是各占独立存储空问。 函数调用过程中,实参向形参拷贝复制值。 实参是个变量,形参也是个变量。如果占用同一片空间的话,编译时候就不存在实参形参类型不匹配的报错参数传递中,形参值的改变不影响实参的值 疑问为什么数组 形参 实参 地址空间一致: 当数组名作为函数的形参是,这个两个数组就共占同一段内存单元,在存储空间上完全重合(虚实...

指针数组

指向指针的数组

指针数组—-指向指针的数组 运算符优先级 优先级 运算符 名称或含义 1 [] 数组下标 1 () 圆括号 1 ./-> 成员选择 ...