#include<stdio.h>
#define N 100
int main(int num, char *argv[])
{
while(num <= N && printf("%d\t", num) && num++)
{}
}
试图打印1到N而不使用分号。 想出了这个解决方案(下面),但迭代方法(上面)正在发生什么。什么是字符指针在做什么? 在上面的代码中,即使删除指针参数,代码也能正常工作。 在网站上找到了上述解决方案。什么是指针声明?
#include <stdio.h>
#define N 100
int main(num)
{
if(num <= N && printf("%d\t", num) && main(num = num + 1))
{}
}
它包含传入的命令行参数。如果您使用参数运行程序,那么'num'将会随参数数量的传递而开始。 – matt
即使指定了类型('int num'),'int main(num)'也是无效的。 'main'签名是'int main(void)'或'int main(int argc,char * argv [])' –
http://stackoverflow.com/questions/2108192/what-are-the-valid-signatures -for-cs-main-function –