c語言null頭文件
發布時間: 2024-07-31 19:19:33
『壹』 C語言的 NULL是什麼
Null,本意是"空的,元素只有零的"意思。NULL和0的值都是一樣的,但是為了目的和用途及容易識別的原因,NULL用於指針和對象,0用於數值。
例:
#include<stdo.h>
int main()
{
int *p=NULL;
printf("%s",p);
}
輸出<null> ,單步調試可以看出執行int *p=NULL,p的值為0x00000000,可以看出,NULL在實際底層調用中就是0。
『貳』 C璇璦 NULL鍦ㄥ摢涓澶存枃浠
NULL瀹忔槸瀹氫箟鍦ㄦ爣鍑嗗簱澶存枃浠stddef.h涓銆瀹忓畾涔濡備笅:
#undefNULL
#ifdefined(__cplusplus)
#defineNULL0
#else
#defineNULL((void*)0)
#endif
鍙浠ョ湅鍑篶++涓NULL涓猴紙int錛0,C涓璑ULL涓(void*)0銆傜湅鏉C鍜孋++涓璑ULL瀹忕殑鍊肩暐鏈変笉鍚屻
『叄』 C語言中NULL是什麼意思
在C語言中,NULL和0的值都是一樣的,但是為了目的和用途及容易識別的原因,NULL用於指針和對象,0用於數值。對於字元串的結尾,使用'\0',它的值也是0,但是讓人一看就知道這是字元串的結尾,不是指針,也不是普通的數值。
拓展資料:
關於NULL的使用
編程工作中有一類比較容易犯的錯誤--指針地址未進行正確的更新賦值就加以使用,這往往會造成很嚴重的後果(對內存區進行錯誤的塗抹)。所以一個良好的習慣是,當一個指針的工作稍事休息,先把它賦值為NULL,待到再度使用時,重新對其賦值以及進行指針類型轉化。
前面說到"NULL指針無法再進行任何數據訪問",其實是視編譯器功能而定的。0位置指向的是程序起始,對於不同的編譯器,NULL指針的操作結果是不同的:有些是不準讀寫,有些是只讀,甚至讀寫都允許。編譯器是人定的。
熱點內容