溫馨提示×

c語言指針與數(shù)組如何互轉(zhuǎn)

小樊
167
2024-07-15 14:58:43
欄目: 編程語言

在C語言中,指針和數(shù)組之間可以相互轉(zhuǎn)換,因?yàn)閿?shù)組名實(shí)際上就是數(shù)組的首地址,而指針也可以存儲(chǔ)地址。

  1. 指針轉(zhuǎn)數(shù)組:可以通過將指針作為數(shù)組名來訪問數(shù)組元素,例如:
int arr[5] = {1, 2, 3, 4, 5};
int *ptr = arr; // 指針指向數(shù)組的首地址
printf("%d\n", ptr[2]); // 輸出3
  1. 數(shù)組轉(zhuǎn)指針:數(shù)組名可以隱式轉(zhuǎn)換為指向數(shù)組第一個(gè)元素的指針,例如:
int arr[5] = {1, 2, 3, 4, 5};
int *ptr = arr; // 數(shù)組名轉(zhuǎn)為指針
printf("%d\n", *(ptr + 2)); // 輸出3

需要注意的是,數(shù)組名轉(zhuǎn)為指針后,數(shù)組的大小信息會(huì)丟失,因此在進(jìn)行指針與數(shù)組之間的轉(zhuǎn)換時(shí)需要注意數(shù)組的大小和邊界。

0