参考:https://bbs.csdn.net/topics/360116265. 问题: 如一个函数如下: int aa( int a, int b ) //举个例子,不要纠结功能. { if(a < b) return (a <= b ) ; //非0 ; //0 } 结论:bool类型(但在C99之前是没有的)其实就是一个特殊的int型,它只有和非0两种情况.(0为false,非0为true).
1. 在C语言中, 如果调用的函数没有函数原型, 则其返回值将默认为 int 型. 考虑调用malloc函数时忘记了 #include <stdlib.h>的情况 此时malloc函数返回值将为 int 而不是void * (这是C语言的规则, 所有没有函数原型的函数返回值都为int), 此时如果在程序中有如下语句 [cpp] int *p = malloc(10); int *p = malloc(10); 则编译器会给出警告, ``assignment of pointer from