如何在C中使用NULL
C語言中使用空指針的簡要指南
許多編程語言都使用了「null」的概念。
Go 語言使用「nil」,JavaScript 使用「null」,Python 使用「None」等等。
而在C語言中,則使用「NULL」。
然而,C語言中的NULL與其他語言使用方式有所不同。在C語言中,NULL僅用於標識一個空指針。
當我們初始化一個指針時,有時候我們並不知道它要指向什麼。這時NULL就派上用場了:
1 | int *p_some_variable = NULL; |
NULL並不是默認可用的:你需要包含stdio.h
標頭文件才能使用它(或者如果你更喜歡的話,可以使用stddef.h
):
1 |
|
否則,C編譯器會報錯:
1 | hello.c:3:26: error: use of undeclared identifier 'NULL' |
你可以通過將指針與NULL
進行比較來檢查它是否為空指針:
1 |
|
在實際應用中,NULL
是一個等於0
或 "\0"
的常數。
這就是為什麼你可以使用以下方式將字符串設置為NULL:
1 | char *a_string = '\0'; |
tags: [“C”, “pointers”, “NULL”]