當前位置:首頁 » 編程語言 » c語言null是啥
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言null是啥

發布時間: 2022-05-01 11:16:21

c語言NULL是什麼意思

null,本意是"空的;元素只有零的"意思。計算機中通常表示空值,無結果,或是空集合。
null指針是一個無類型指針,並且值為0。一個指針,擁有2個屬性--地址值和指針類型。兩者的作用是:1,地址值標識變數的首地址(32位系統下指針的地址值佔4位元組);2,指針類型告訴編譯器,應該怎樣進行接下來的數據訪問(int型數組和float型數組是不同的;數組訪問與結構體訪問也是不同的;等等)。

② c語言中null什麼意思

#defineNULL0

③ null在c語言中什麼意思

C中沒有對null預定義,所以null和'\0'區別就大了:null只是個合法的用戶標識符,而'\0'是預定義為0的字元常量。如果是NULL和'\0',那它們沒有區別,都被預定義為值為0的常量,所以混用它們不會產生任何問題,甚至把用它們的地方都改成0也無妨。一般情況下,NULL用於使指針無效或判斷指針是否無效,'\0'則用於字元串結束或判斷字元串是否結束。這樣規范書寫,代碼的可讀性就大為提高,沒有發現有什麼別的意義。

④ C語言<null>是什麼

在頭文件中定義的一個常量NULL=0;

用於指將指針懸空(不指向任何位置)樓上的指向0內存不對的.
int*p=NULL;
NULL是個好東西,給一出生的指針一個安分的家

NULL總是被定義為0嗎?

NULL不是被定義為o,就是被定義為(void*)0,這兩種值幾乎是相同的。當程序中需要一個指針時(盡管編譯程序並不是總能指示什麼時候需要一個指針),一個純粹的零或者一個void指針都能自動被轉換成所需的任何類型的指針。

NULL總是等於0嗎?
對這個問題的回答與「等於」所指的意思有關。如果你是指「與。比較的結果為相等」,例如:
if(/*...*/)
{
p=NULL;
}
else
{
p=/*somethingelse*/;
}
/*...*/
if(p==0)
那麼NULL確實總是等於0,這也就是空指針定義的本質所在。

如果你是指「其存儲方式和整型值。相同」,那麼答案是「不」。NULL並不必須被存為一個整型值0,盡管這是NULL最常見的存儲方式。在有些計算機中,NULL會被存成另外一些形式。

如果你想知道NULL是否被存為一個整型值0,你可以(並且只能)通過調試程序來查看空指針的值,或者通過程序直接將空指針的值列印出來(如果你將一個空指針強制轉換成整類型,那麼你所看到的很可能就是一個非零值)。

⑤ C語言中NULL是什麼意思

在C語言中,NULL和0的值都是一樣的,但是為了目的和用途及容易識別的原因,NULL用於指針和對象,0用於數值。對於字元串的結尾,使用'\0',它的值也是0,但是讓人一看就知道這是字元串的結尾,不是指針,也不是普通的數值。
拓展資料:
關於NULL的使用

編程工作中有一類比較容易犯的錯誤--指針地址未進行正確的更新賦值就加以使用,這往往會造成很嚴重的後果(對內存區進行錯誤的塗抹)。所以一個良好的習慣是,當一個指針的工作稍事休息,先把它賦值為NULL,待到再度使用時,重新對其賦值以及進行指針類型轉化。
前面說到"NULL指針無法再進行任何數據訪問",其實是視編譯器功能而定的。0位置指向的是程序起始,對於不同的編譯器,NULL指針的操作結果是不同的:有些是不準讀寫,有些是只讀,甚至讀寫都允許。編譯器是人定的。

⑥ C語言中NULL是表示什麼

NULL是一個宏,值為0
一般來用表示空指針,在stdio.h中可以找到NULL的宏定義

⑦ 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 用於表示指針是空指針。實際使用中實際上 NULL = 0
不過一般不建議用NULL= 0這個特性。

⑨ c語言的null

NULL 就是一個特殊的指針值, 其實本質是一個宏
#define NULL (void *)0
也就是0值, 強制轉成了指針。
用來表示一個指針非法。 所以在初始化的時候經常用NULL來初始化。
由於是非法指針, 所以對這個指針取值(*操作)會導致程序崩潰。 必須要先指向一個有效空間才可以。

⑩ C語言中NULL是什麼意思

是空指針,指向地址為0的內存,在用法上,常用來表示不存在,
例:if((fp=fopen("stu","rb"))==NULL)
exit(0);
解析:如果打開的這個名為stu的文件不存在,就退出程序;