【发布时间】:2013-10-14 16:01:45
【问题描述】:
我正在用 C 语言编写一个简单的函数,它以字节(逐位)返回一个数字“1”。 这是我的代码,编译器告诉:“在“for”开始的行中“=”标记之前的预期表达式。
#include <stdio.h>
#include <stdlib.h>
int return_num_of_1(unsigned char u);
int main()
{
printf("Hello world!\n");
return 0;
return_num_of_1(1);
}
int return_num_of_1(unsigned char u)
{
int counter;
for (counter = 0; u; u << = 1)
{
if(u & 1) counter++;
}
return counter;
}
【问题讨论】:
-
为什么main中有两个return?
-
这不是两个返回,第二个是对函数的调用。在
return 0之后拥有它仍然是错误的.. -
@JayNebhwani 我看到返回 0 然后返回一些东西 :)
标签: c gcc gcc-warning