C语言高级编程:数组名赋值给指针变量的用法解析
生活随笔
收集整理的這篇文章主要介紹了
C语言高级编程:数组名赋值给指针变量的用法解析
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
代碼:
#include<stdio.h>typedef struct test {int a;int b;int c; } TEST;TEST arr[]={{1,2,3},{4,5,6},{7,8,9} };void main(void) {TEST *tmp;tmp = arr;printf("tmp: %d, %d, %d,%d, %d, %d,%d, %d, %d\n", tmp[0].a, tmp[0].b, tmp[0].c, tmp[1].a, tmp[1].b, tmp[1].c, tmp[2].a, tmp[2].b, tmp[2].c);printf("arr: %d, %d, %d,%d, %d, %d,%d, %d, %d\n", arr[0].a, arr[0].b, arr[0].c, arr[1].a, arr[1].b, arr[1].c, arr[2].a, arr[2].b, arr[2].c); }?
執行結果:
[baoliw@AONTFN07 ~]$ ./a.out
tmp: 1, 2, 3,4, 5, 6,7, 8, 9
arr: 1, 2, 3,4, 5, 6,7, 8, 9
?
結果分析:
1)數組名可以直接賦值給相同類型的指針變量
2)指針變量可以采用類似數組的用法,如:tmp[0].a
?
注:不能將數組名賦值給數組變量,如:
TEST jj[3];
jj = arr;
編譯將產生錯誤: error: incompatible types when assigning to type ‘struct TEST[3]’ from type ‘struct TEST *’
?
?
總結
以上是生活随笔為你收集整理的C语言高级编程:数组名赋值给指针变量的用法解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 沈腾在《西虹市首富》里背过 《满江红》超
- 下一篇: 负数在计算机怎样表示与存储