關於null和null的區別,C C中的NULL和null有什麼區別?

發布 教育 2024-06-29
10個回答
  1. 匿名使用者2024-01-30

    字串以 ASCII 格式儲存,每個字元占用乙個位元組。

    中間的空格是乙個空格,ascii是32,所以記憶體中的空格是32,後面的b ascii是98,儲存在記憶體中的是98

    就像你上面定義字串的方式一樣,你說 null 是分配的空間,0 是儲存的

  2. 匿名使用者2024-01-29

    在 C++ 中,“空”不是乙個明確的概念,所以不要使用這個詞。

    您所說的字串中的 null 是乙個“空格”或空白,它占用乙個字元並以 ASCII 32 編碼

    null 作為字串結束標記,實際上儲存值 0,字元表示為'\0'這被指定為字串結尾的標記,並且任何標記都不能僅用作陣列,而不能用作字串。

    char a = "asdf"陣列的長度為 5,最後乙個為 0,不顯示。

    char a = ""陣列的長度為 1,只有乙個結束標記。

    char a[1]; a[0]='a';陣列的長度為 1,沒有結束標記,因此不能用作字串。

    null null 是 C++ 定義的巨集關鍵字,其實際含義是當前通用 C++ 標準中的值 0

  3. 匿名使用者2024-01-28

    空格是具有特殊 ascll 程式碼值的字元,而 null 是不存在的,並且存在本質區別。

  4. 匿名使用者2024-01-27

    C 和 C++ 區分大小寫,這意味著 null 和 null 的處理方式不同。 null(如果由巨集定義)表示空位址,null(如果未由巨集定義)只是乙個符號。

    1. 實際上,null 和 null 都是字串,具體取決於它們的巨集定義被定義為什麼值。

    2.在VS中,null被定義為0,因為習慣上將巨集定義的所有字元都大寫,而當null賦值給指標時,含義為空,當然,你也可以將null定義為0,都一樣。 可以直接給指標賦乙個0,只要指標指向0,它就會為空。

    3.對於空(null)指標的概念,在C標準中有明確定義:值為0的整數常量表示式,或強制將**替換為“void*”型別的表示式,稱為空指標常量。

    4. 當將 null 指標常量分配給指標或與指標進行比較時,該常量將轉換為指向該型別的指標,此類指標稱為空指標。 與指向任何物件或函式的指標相比,保證 Null 指標不相等。

  5. 匿名使用者2024-01-26

    null 在 C++ 標準庫中被定義為巨集,通常為:

    define null ((void*)0) *c, null 替換為 void* 型別的指標右值,該值等於 0; 由於它屬於 void* 型別,因此可以隱式轉換為其他型別的指標。

    定義 null 0 c++,相對於 C 簡化定義的原因是 C++ 中的 void* 不能自由隱式地轉換為其他型別的指標,而文字 0 可以隱式轉換為指標型別; 雖然它實際上可以用作整數 0 而不會引起編譯問題,但重要的是要注意,出於設計目的,null 應始終用作 null 指標。

    char c = null 等價於 char c = 0,也就是說,初始化 c 在這裡並不意味著是乙個 null 指標,而是乙個隱式轉換的字元'/0'- 字元值為 0 的字元。 在 C++ 的一般實現中,這種行為(值為 0 的數值型別,無論是 void* 還是 int,轉換為 char 或 0 的值)是顯式的,但用法不合適。 與 LS 錯誤一樣,與 ASCII 和相容字符集中的值 0 對應的字元是 null 字元(null 終止符),它應該是 nul(未在標準庫中定義,在語言中為 char 型別)。'/0',wchar t型帶l'/0') 而不是 null。

    NUL 的乙個重要應用是作為 c 樣式的字串結束標誌字元。

  6. 匿名使用者2024-01-25

    是的,C 和 C++ 區分大小寫,這意味著 null 和 null 的處理方式不同。 null 代表乙個空位址,null 只是乙個符號。

  7. 匿名使用者2024-01-24

    null 代表空,null 沒有特殊含義,不是關鍵字。

  8. 匿名使用者2024-01-23

    這沒有區別,但可能有一些軟體區分大小寫。

  9. 匿名使用者2024-01-22

    1. null:它表示乙個空物件,而不是乙個字串,可以分配給任何物件。

    Null 字元:表示宣告了乙個物件例項,該物件例項的值為長度為 0 的空字串。

    2、string s=null;只需定義乙個控制代碼,即您有乙個引用,但該引用不指向任何記憶體空間。

    引用字串 s=“” 已經指向一段記憶體空間,該記憶體空間是乙個空字串,這是乙個實際的東西,因此您可以操作它。

    string s=“a” 和 string s=new string(“a”); 有乙個根本的區別:

    1)前者是在字串池中寫乙個字元“a”,並用s指向它;後者是在堆上建立乙個內容為“a”的字串物件。

    2) string str=”aaa”;在堆疊上分配記憶體; string str=new string(“aaa”);在堆上分配記憶體。

    請新增詳細說明。

  10. 匿名使用者2024-01-21

    1、null。原意是“空; 元素只有零“的意思。 在計算機中,它通常表示 null 值、無結果或空集。

    2. null 翻譯為“空”。 在計算機中,它通常意味著沒有結果和空值。 它是乙個引用,表明指標不指向任何物件,其元素只是“零”。

    3.在C語言中,它用於表示字串。

    這是字串的末尾,字串的最後乙個字元。

    4.在ASCII碼中,null是第乙個字元,值為0,占用乙個位元組。

相關回答
16個回答2024-06-29

c c 中類和抽象資料型別的區別

1.抽象資料型別的概念現在很少使用,這個概念是OO正規化的前身,也是類的前身,抽象資料型別不支援繼承、過載和多型性,類支援繼承性、過載性和多型性。 >>>More

7個回答2024-06-29

你好。 我也剛買了n82

感覺很好。 我們的 82 是雙核系統。 >>>More

9個回答2024-06-29

常量是常量,引數是變數。

引數,也稱為引數變數。 >>>More

6個回答2024-06-29

你不必看任何職業跳高比賽,因為我們沒有時間和精力進行這樣的訓練,對吧? >>>More

15個回答2024-06-29

我也遇到過類似的問題。 完全不像我在樓上說的,不按照步驟連線就無法連線! 如果你和我的情況一樣,那都是電腦問題,建議你在更好的電腦上試試!