#import<Foundation/Foundation.h> /**NSLog后格式 %@ 對象 %d, %i 整數 %u 無符整形 %f 浮點/雙字 %x, %X 二進制整數 %o 八進制整數 %zu size_t %p 指針 %e 浮點/雙字 (科學計算) %g 浮點/雙字 %s C 字符串 %.*s Pascal字符串 %c 字符 %C unichar %lld 64位長整數(long long) %llu 無符64位長整數 %Lf 64位雙字 argc是命令行總的參數個數 argv[]是argc個參數,其中第0個參數是程序的全名,以后的參數 命令行后面跟的用戶輸入的參數 */ int main(int argc,const char * argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; //http://blog.csdn.net/flashtao613/article/details/6285304 詳細解釋NSAutoreleasePool對象引用計數自動處理器 //NSLog(@"中文"); //NSLog可以支持中文輸出 NSLog(@"argc=%d",argc); NSLog(@"主函數中第二個參數數組個數=%d",sizeof(argv)); //sizeof 字符指針數組的元素個數,元素個數代表了什么呢?argv[1,2,3]都不存在 //NSLog(@"第一個數據是:%@",*argv[0]); NSLog(@"argv[%d] = %s\n", 0, argv[0]); //輸出格式帶2個參數 /*控制台輸入整數並打印出整數*/ int userInput; scanf("%i",&userInput); NSLog(@"you typed %i",userInput); /*控制台輸入字符串並打印*/ char str[50] = {0}; printf("輸入名字並回車:"); scanf("%s",str); NSString *lastName = [NSString stringWithUTF8String:str]; NSLog(@"lastName=%@",lastName); /*alloc對象必須顯示釋放**/ NSString* string = [[NSString alloc] init]; [string stringByAppendingString:@"Hello World!"]; NSLog(@"string is:%@",string); //為何顯示不出來正確字符串 [pool drain]; [string release]; //顯示釋放 return (0); //此處為main函數執行的最后一行,如果NSLog放在這一行下面,將不會執行 }