我是C新手,并且写下面的代码返回一个字符。C函数返回字符给出冲突类型的错误
read.c:8:1: warning: data definition has no type or storage class [enabled by default]
test();
^
read.c:71:6: error: conflicting types for ‘test’
char test(){
^
read.c:8:1: note: previous declaration of ‘test’ was here
test();
^
任何想法:
int main(int argc, char * argv[]){
char c = test();
printf("num = %c \n", c);
}
char test(){
char c = 'z';
return c;
}
但是编译时,我得到了下面的错误?这是否需要内存分配?如果是这样,为什么?
始终把你的主(...)函数在C文件的底部,否则你需要在文件顶部添加函数原型。 – cleblanc