体系学习1:C语言与指针1——预定义、进制打印、传参为数组
1、不对一段代码进行编译
#if 0
statement
#endif
2、输出地址
int d[3]={1,2,3};
printf("%p",(void*)d);//p期待的是void*类型的数据
3、不同进制的打印
int data = 1200;
char hed[9];//为\0预留位置!!!
sprintf(hed,"%08X",data);
printf("%s",hed);
4、数组以引用形式传参
void test(int d[])
{printf("%p",(void*)d);d[2] = -1;
}
int main()
{int d[3] = {1,2,3};printf("%p",(void*)d); test(d);printf("%d",d[2]);
}
发现地址不同,但是数组内容确实被改变了,所以是按照引用传递。
5、两种常见的输入——scanf()会忽视空格和换行,但是getchar一视同仁。
char d;
d = getchar();
int da;
scanf("%d",da);
int t;
t = getchar();
if(t==EOF)//EOF超出了char的范围。
printf("ok\n");