#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 –