指针一维数组名的含义
生活随笔
收集整理的這篇文章主要介紹了
指针一维数组名的含义
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
&a[0]表示第一個元素變量的地址值
a表示數組第一個元素的地址
#include <stdio.h>int main() {int a[5]; //a是數組名 //int b[3][4];int b[5];//a = b; 報錯error a是常量 // printf("%lf\n", &a[0]);printf("&a[0]=%#X\n", &a[0]);printf("&a[0]+1=%#X\n", &a[0]+1);printf("&a[1]=%#X\n", &a[1]);printf("&a=%#X\n", &a);printf("a=%#X\n", a);printf("&a+1=%#X\n", &a+1);printf("a+1=%#X\n", a+1); // printf("%#X\n", 470812087); //0X1C1005B7while (true){ }}?
可以看到雖然a和&a的地址是一樣的,但是a+1的地址向后走了四個字節,也就是跳過了一個元素。所以a代表的是首元素的地址
&a+1可以看到和arr相差20個字節,是跳過了整個數組。那么&a表示的是取整個數組的地址,而不是數組首元素的地址 。
?
&a[0]表示首元素的地址
&a[0]+1=&a[1]? ? ? ? ? ??&a[1]表示第二個元素的地址
從輸出結果可以看出,數組的元素的地址是連續的
?
?
總結
以上是生活随笔為你收集整理的指针一维数组名的含义的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 详解中奖概率逻辑:为什么你中不了特等奖(
- 下一篇: 图论—割点zcmu2095