1. c語言中null什麼意思
#defineNULL0
2. C語言中NULL是什麼意思
是空指針,指向地址為0的內存,在用法上,常用來表示不存在,
例:if((fp=fopen("stu","rb"))==NULL)
exit(0);
解析:如果打開的這個名為stu的文件不存在,就退出程序;
3. C語言中NULL是什麼意思
在C語言中,NULL和0的值都是一樣的,但是為了目的和用途及容易識別的原因,NULL用於指針和對象,0用於數值。對於字元串的結尾,使用'\0',它的值也是0,但是讓人一看就知道這是字元串的結尾,不是指針,也不是普通的數值。
拓展資料:
關於NULL的使用
編程工作中有一類比較容易犯的錯誤--指針地址未進行正確的更新賦值就加以使用,這往往會造成很嚴重的後果(對內存區進行錯誤的塗抹)。所以一個良好的習慣是,當一個指針的工作稍事休息,先把它賦值為NULL,待到再度使用時,重新對其賦值以及進行指針類型轉化。
前面說到"NULL指針無法再進行任何數據訪問",其實是視編譯器功能而定的。0位置指向的是程序起始,對於不同的編譯器,NULL指針的操作結果是不同的:有些是不準讀寫,有些是只讀,甚至讀寫都允許。編譯器是人定的。
4. c語言null什麼意思
NULL 用於表示指針是空指針。實際使用中實際上 NULL = 0
不過一般不建議用NULL= 0這個特性。
5. c語言為什麼我的運行結果會出現null,請大牛們幫幫
1.
你這個程序的功能是用來將兩個字元串合並起來
並實現輸出。
2.
你程序前面的合並都對,在輸出的地方,出錯了錯誤如下:
//printf("%s\n",str[i+j]);
//原來出錯的地方
printf("%s\n",str);
//改正後的地方
3.
下面是修改後的程序,已經可以輸出鏈接後的字元串了。
方法
#include<stdio.h>
void
main()
{
char
str1[50],str2[50],str[50];
int
i,j;
printf("input
str1:\n");
scanf("%s",str1);
printf("input
str2:\n");
scanf("%s",str2);
for(i=0;str1[i]!='\0';i++)
{
str[i]=str1[i];
}
for(j=0;str2[j]!='\0';j++)
{
str[i+j]=str2[j];
}
str[i+j]='\0';
//printf("%s\n",str[i+j]);
//原來出錯的地方
printf("%s\n",str);
//改正後的地方
}
運行結果如下圖:
6. 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。
7. null在c語言中什麼意思
C中沒有對null預定義,所以null和'\0'區別就大了:null只是個合法的用戶標識符,而'\0'是預定義為0的字元常量。如果是NULL和'\0',那它們沒有區別,都被預定義為值為0的常量,所以混用它們不會產生任何問題,甚至把用它們的地方都改成0也無妨。一般情況下,NULL用於使指針無效或判斷指針是否無效,'\0'則用於字元串結束或判斷字元串是否結束。這樣規范書寫,代碼的可讀性就大為提高,沒有發現有什麼別的意義。
8. C語言字元數組為什麼輸出了null
strcat和strcat_s的返回值是不一樣的,你用strcat可以這么寫,因為返回的是合並後字串的地址,但strcat_s返回不是地址,返回的是錯誤碼,0表示成功,你這里返回的是0,所以就是null
9. c語言 讀文件 結果為null是什麼情況
大多數情況下為0
可以從頭文件中看到其宏定義
#ifndefNULL
#ifdef__cplusplus
#defineNULL0
#else
#defineNULL((void*)0)
#endif
#endif
#defineoffsetof(s,m)(size_t)&(((s*)0)->m)
10. c語言NULL是什麼意思
null,本意是"空的;元素只有零的"意思。計算機中通常表示空值,無結果,或是空集合。
null指針是一個無類型指針,並且值為0。一個指針,擁有2個屬性--地址值和指針類型。兩者的作用是:1,地址值標識變數的首地址(32位系統下指針的地址值佔4位元組);2,指針類型告訴編譯器,應該怎樣進行接下來的數據訪問(int型數組和float型數組是不同的;數組訪問與結構體訪問也是不同的;等等)。