第1个回答 2011-09-05
转义字符其他朋友都已经贴出来了,&是代表取址的意思,scanf函数要求输入的是一个指针,如果你定义的是一个变量,自然就需要使用&传入变量的地址到scanf函数中,printf传入的是变量名,自然就不需要&取址.当然,如果
printf("%d,%d,%d\n",&a,&b,&c);
你会将三个变量的地址打印出来.而不是这个变量的值.
当然,如果函数定义:void abc(int *parm);
如果主函数中已经定义了int *a;
那么调用的格式是abc(*a)
如果主函数中定义的是一个整型变量int a;
那么调用函数的格式是 abc(&a);
这里指的是参数传入方式.根据函数原形定义来决定如何去实现传值还是传址.
关于指针的概念,还得请楼主再看看书.