在C語言中,const
關鍵字用于聲明一個常量,即其值在程序運行期間不能被修改。當const
關鍵字與數組一起使用時,它可以應用于數組的元素、整個數組或數組的指針。以下是const
關鍵字在C語言數組中的一些應用場景:
const int arr[] = {1, 2, 3, 4, 5};
在這個例子中,數組的元素被聲明為常量,這意味著你不能通過指針間接修改它們的值。然而,你仍然可以改變數組的大小(通過重新分配內存)。
const int arr[] = {1, 2, 3, 4, 5};
const int *ptr = arr;
在這個例子中,整個數組被聲明為常量,這意味著你不能改變數組的大小或內容。指針ptr
指向數組的首元素,但不能通過ptr
修改數組的值。
int arr[] = {1, 2, 3, 4, 5};
const int *ptr = arr;
在這個例子中,數組指針被聲明為常量,這意味著你不能改變指針的值(即不能讓它指向另一個數組)。然而,你可以通過指針修改數組的值。
需要注意的是,當const
關鍵字應用于數組時,它只限制了數組的可修改性,而沒有限制數組的大小。要改變數組的大小,你需要使用動態內存分配函數(如malloc
、calloc
或realloc
)。