程序猿之---C语言细节12(指针和数组细节,"//"的可移植性说明)
2014-11-07 18:17
330 查看
主要内容:指针和数组细节,"//"的可移植性说明
#include <stdio.h> int main(int argc, char **argv) { int a[10]={1,2,3,4,5,6,7,8,9,0},*p; #if 0 /* 按移植性来说,在《c语言程序设计--现代方法》指出要用当前注释方法,而不是// 因为一些编译可能不支持 */ // 错误举例 while(*a != 0) { a++; // a++ 相当于a = a+1,不能改变a的值 // 而*(a+1) = 12;是可以的,a[1]= 12; // a 可以代替 &a[0], a+1可以代替&a[1] } #elif 1 p = a; while(*p !=0) { printf("%d\n",*p); *p++; } #else int i; // 用指针做数组名 p = a; for(i = 0; i < 10; i++) { printf("%d\n",p[i]); } #endif return 0; }
输出:
相关文章推荐
- 程序员之---C语言细节12(指针和数组细节,"//"的可移植性说明)
- 程序猿之---C语言细节1(==与=、函数指针、数组字符串printf、int ((b));、char b =‘abcd’)
- 程序猿之--C语言细节13(二维数组和指针,&*a[i][0]的理解,数组1[e]和e[1]很可能你没见过)
- 程序猿之---C语言细节30(数组和指针操作测试题,你能全答对吗??)
- 程序猿之---C语言细节30(数组和指针操作测试题,你能全答对吗??)
- 程序猿之--C语言细节13(二维数组和指针,&*a[i][0]的理解,数组1[e]和e[1]很可能你没见过)
- 【C语言】12-指向一维数组元素的指针
- 程序员之--C语言细节13(二维数组和指针,&*a[i][0]的理解,数组1[e]和e[1]非常可能你没见过)
- 【C语言】12-指向一维数组元素的指针
- 程序猿之---C语言细节29(#define宏大小、空结构体大小、柔性数组不知道你见过没)
- 黑马程序员——零基础学习iOS开发——05 C语言:进制、内存储存细节、类型说明符、位运算、数组
- 【C语言】12-指向一维数组元素的指针
- 【C语言】12-指向一维数组元素的指针
- 程序猿之---C语言细节22(函数返回指针注意事项<悬空指针>、查看进程可以分配的内存大小)
- 程序猿之---C语言细节6(数组参数、数组越界、编译器内存分配)
- 【C语言】12-指向一维数组元素的指针
- 【C语言】12-指向一维数组元素的指针
- 程序猿之---C语言细节14(字符串数组内存分配细节‘\0’空字符、字符串数组赋值细节、字符串换行连接和下标)
- 【C语言】12-指向一维数组元素的指针
- C语言 一个例子说明结构体变量,结构体数组和结构体指针