在C語(yǔ)言中,數(shù)組名本身就是一個(gè)指向數(shù)組首元素的指針。可以通過(guò)數(shù)組名來(lái)引用數(shù)組。
例如,定義一個(gè)整型數(shù)組并賦初值:
int arr[5] = {1, 2, 3, 4, 5};
可以使用數(shù)組名來(lái)引用數(shù)組的元素,如下所示:
int num = arr[2]; // 引用數(shù)組第三個(gè)元素,值為3
也可以使用指針來(lái)引用數(shù)組的元素,如下所示:
int *ptr = arr; // 將數(shù)組名賦值給指針
int num = *(ptr + 2); // 引用數(shù)組第三個(gè)元素,值為3
在上述代碼中,通過(guò)將數(shù)組名賦值給一個(gè)指針變量,可以通過(guò)指針來(lái)引用數(shù)組的元素。通過(guò)指針的算術(shù)運(yùn)算,可以實(shí)現(xiàn)按照偏移量引用數(shù)組的不同元素。在這個(gè)例子中,ptr + 2
表示指針向后移動(dòng)兩個(gè)元素的位置,然后使用 *
運(yùn)算符解引用指針,得到該位置上的元素值。
需要注意的是,數(shù)組名是一個(gè)常量指針,不能修改數(shù)組名的值。也就是說(shuō),不能像指針一樣通過(guò)修改數(shù)組名來(lái)改變指向的位置。
此外,還可以使用下標(biāo)的方式來(lái)引用數(shù)組的元素,如arr[2]
表示引用數(shù)組的第三個(gè)元素。