自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

淺析C++中的C++數(shù)組規(guī)則

開發(fā) 后端
在C++中,數(shù)組是以0為基數(shù),數(shù)組中的第一個元素為0,第二個元素為1,第三個元素為2,還有一些數(shù)組的相關介紹那么就請看下文吧。

大多數(shù)人對于C++數(shù)組的理解還是不夠深刻的,如果想要對數(shù)組賦值,那么首先要向數(shù)組元素賦值終止null和其它字符值時,必須用單引號,所以在處理C++數(shù)組時一定要仔細。。

如果重載數(shù)組末尾,則無法知道哪個內存被改寫了,使結果難以預料,甚至會導致程序或Windows崩潰。這類問題很難診斷,因為受影響的內存通常要在很久以后才訪問,這時才發(fā)生崩潰(讓你莫名其中之妙)。所以寫入數(shù)組時一定要小心。

數(shù)組規(guī)則

◆數(shù)組是以0為基數(shù)。數(shù)組中的***個元素為0,第二個元素為1,第三個元素為2,等等。

◆數(shù)組長度應為編譯常量。編譯器在編譯時必須知道為數(shù)組分配多少內存空間。不能用變量指定數(shù)組長度。所以下列代碼不合法,會導致編譯錯誤: 小心不要重載數(shù)組末尾。

◆ 大數(shù)組從堆疊(heap)而不是堆棧(stack)中分配(詳見稍后)。
◆ 從堆疊分配的數(shù)組可以用變量指定數(shù)組長度。

字符數(shù)組

奇怪的是,C++不支持字串變量(放置文本的變量),C++數(shù)組中的字串是用char數(shù)據(jù)類型的數(shù)組表示的。例如,可以將變量賦予char數(shù)組如下。這就在內存中分配18字節(jié)的內存空間用于存放字串。根據(jù)你的領悟能力。

也許你會發(fā)現(xiàn)該字串中只有17個字符。分配18個字節(jié)的原因是字串要以終止null結尾,C++數(shù)組在分配內存空間時把終止null算作一個字符。 新術語 終止null是個特殊字符,用|0表示,等于數(shù)值0。程序遇到字符數(shù)組中的0時,表示已經(jīng)到字串末尾。為了說明這點,輸入并運行下列控制臺應用程序。

  1. 清單1.6Nulltest.cpp   
  2.  
  3. 1: #include <iostream.h>   
  4.  
  5. 2: #include <conio.h>   
  6.  
  7. 3: #pragma hdrstop   
  8.  
  9. 4:   
  10.  
  11. 5: int main(int argc,char **argv)   
  12.  
  13. 6: {   
  14.  
  15. 7:char str[]="This is a string.";   
  16.  
  17. 8.cout << str << end1;   
  18.  
  19. 9.str[7]= '\0';   
  20.  
  21. 10. cout << str << end1   
  22.  
  23. 11. cout << end1 << "Press any key to continue...";   
  24.  
  25. 12: getch();   
  26.  
  27. 13: return 0;   
  28.  
  29. 14: }  

分析 最初,字符數(shù)組包含字符串This is a string和一個終止null,這個字串通過cout送到屏幕上。下一行將數(shù)組的第7個元素賦值為|0,即終止null。字串再次發(fā)送到屏幕上,但這時只顯示This is。原因是計算機認為數(shù)組中字串在第7個元素上終止,余下字串仍然在內存空間中,但不顯示,因為遇到了終止null。圖1.10演示了將數(shù)組的第7個元素賦值為|0的語句前后的字符數(shù)組。

說明 C++程序中單引號與雙引號是有差別的。向數(shù)組元素賦值終止null和其它字符值時,必須用單引號。單引號的作用是將引號內的字符變成整型值(該字符的ASCII值),然后將這個值存放在內存地址中。將字串賦予字符數(shù)組時,必須用雙引號。如果用錯引號,則編譯器會發(fā)生編譯錯誤。

【編輯推薦】

  1. 簡介學習C++總結之談
  2. C++庫函數(shù)進行學習探索總結筆記
  3. C++類庫設計的基本構思與方法
  4. C++語言真的還有市場價值?
  5. C++類庫設計的基本構思與方法
責任編輯:chenqingxiang 來源: 艾瑞網(wǎng)
相關推薦

2010-01-21 09:34:57

C++語法

2010-01-27 16:05:06

C++堆棧

2010-01-27 17:16:52

C++構造函數(shù)

2011-06-08 14:42:33

C++多維數(shù)組

2010-01-26 14:35:11

C++關鍵字

2010-01-28 13:45:06

C++數(shù)組

2021-10-19 14:04:28

C++類型數(shù)字

2010-01-21 13:48:30

C++基類

2010-01-21 14:07:14

CC++聲明

2010-01-20 14:13:33

C++變量

2021-10-21 18:52:00

C++數(shù)組存儲

2010-01-25 10:54:18

C++設計

2010-01-21 13:33:44

C++基類

2010-01-25 10:25:19

C++變量

2010-01-28 16:31:54

C++類型

2020-08-21 13:20:36

C++If ElseLinux

2010-01-25 16:58:15

C++程序

2010-01-26 10:42:26

C++函數(shù)

2009-09-16 14:56:23

C++

2010-01-27 15:46:15

學習C++效率
點贊
收藏

51CTO技術棧公眾號