看下面简单的代码让我们简要分析一下%d ,全局变量,局部变量。
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[]) {
// NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
// insert code here...
int x;
x=10;
if (x==10) {
int x=100;
printf("intter x is :%d\n\r",x);
}
printf("outer x is :%d\n",x);
// [pool drain];
return 0;
}
在main函数中声明一个变量X ,并为之赋值为10.只if语句中声明了一个变量X。在if语句块中访问变量X的话,只能访问到if语句块中的变量X。if语句块外的X变量是访问不到的。这种情况是块中变量将块外的同名变量覆盖了。
程序运行的结果是:
intter x is:100
outer x is :10
在程序中用到了 %d ,\n,\r.
\n:换行
\r:回车
%d:占位符
%是引导符,d 代表十进制整数的形式
printf("outer x is :%d\n",x);是说:在输出的时候输出一个占位符,占变量X的位,表示变量X以十进制整数的形式输出。