今天我們把數(shù)組復習一下,數(shù)組是怎么用的,怎么對它進行定義,怎么對它進行賦值,然后把字符型數(shù)組大概說一下。
1維數(shù)組,1維數(shù)組就是1串數(shù),怎么定義這1串數(shù)呢?數(shù)組雖然是1組數(shù),但是我們可以對它單獨使用,它就是1組有順序的數(shù)。
把1組有順序的數(shù)給它存到1個連續(xù)的存儲空間中,這就是數(shù)組在單片機的應用,某公司1共有50個人,我們50個人的編號就可以存到1個數(shù)組里,這個數(shù)組的長度就是50,里面存50個數(shù),在定義了1個存儲長度是50個數(shù)的數(shù)組,單片機就會自動給我們分配1個連續(xù)的存儲空間,這50個數(shù)的數(shù)組在單片機中,存儲的方式是連續(xù)存儲的地址是1個挨著1個,沒有任何間隔定義,這個能存50個數(shù)的數(shù)組,它的存儲類型是1個整形。
如果我想單獨把5號這個編號拿出來使用的話,那我直接就可以針對這個存儲地址對它進行賦值。
比如說我們編號為5號同事名字是小李,但她突然離職,但是又來了1個新同事,又來了1個同事叫小王,這個小王沒有編號,但是小李的編號是5號,可是它又離職了,那我就可以讓小王變成5號,就要把5號這個編號對應到小王的身上。
就是我定義數(shù)組的時候,它給我開辟了1串連續(xù)的存儲空間,這個存儲空間里面要存什么是我決定的,我想讓它存什么存什么,這就是我們數(shù)組的賦值,可以給這個數(shù)組里面任何1個數(shù)進行單獨賦值,1維數(shù)組,2維數(shù)組都是這樣的,不要把它想成1個數(shù)組,1串數(shù)這么復雜,只要把它想成就是1個1個的數(shù),你可以把它當1個數(shù)用,只是在表達1個數(shù)的時候,比方說表達1就是1,表達2就是2,但是這個數(shù)組你想表達1的時候,你就是A1,向你表達2的時候就是A2,它只是名字不1樣,表達方式不1樣,其實用起來還是跟我們所定義的那個整形變量是1樣用的。
我們再看1下2維數(shù)組的賦值。
給1個3行4列的整型數(shù)組賦值,這個賦值后的結(jié)果是什么樣子,比方說定義1個3行4列的整型數(shù)組a,我第1行只給它賦了1個數(shù)1,第2行給它賦了1個數(shù)5,第3行給它賦了1個數(shù)5,這個數(shù)組最后是什么樣子的,數(shù)組的第1行只有1個數(shù),就是1,它是3行4列,所以說它的第1行有4列,第1行是4個數(shù),但是它只給賦了1個數(shù)1,那就代表第1行的第1個數(shù)是1,其它3個數(shù)都是0,那它的第1行肯定就是1000,那第2行它就賦了1個5,那它的結(jié)果肯定就是第1個是5,然后后面的3個都是0,那第3行附了1個9,同樣第1個數(shù)是9,后面3個數(shù)都是0,我們現(xiàn)在先來看1下這個小程序,這個小程序它開始定義了1個十行十列的數(shù)組,這十行十列的數(shù)組是1個浮點類型的數(shù)組,而且這個浮點型的數(shù)組是存在我們的片外存儲器中的,因為它用了1個X data,它又定義了1個浮點型的1個變量X,這個X也是存儲在外部存儲器中的,它讓這個數(shù)組的第5行的第0個數(shù),把這個數(shù)給它賦值給。X這個變量就相當于2維數(shù)組中存的所有的數(shù),都能把它單獨拿出來,單獨使用,把它單獨賦值給1個其它類型的變量,而且同種數(shù)據(jù)類型的數(shù)我就可以相互賦值,數(shù)組里面的數(shù)可以復制給其它的變量,其它的變量也可以賦值給數(shù)組里面的任意1個數(shù),這都是可以的,這就是我們數(shù)組在程序中的應用。
現(xiàn)在來講最后1種數(shù)組,字符型數(shù)組,字符型數(shù)組其實跟之前所說的整型數(shù)組、浮點型數(shù)組是1樣的,它就只是它里面存的那個數(shù)據(jù)類型是1個字符型的而已。
以女人舉個例子,女人的英文是woman,那我九可以把這個單詞存儲到我的字符型數(shù)組里面,woman這個單詞1共是5個字母,可以把我這5個字母存到我1個數(shù)組里面,如果把字符型數(shù)組按照我們之前講的那些,數(shù)組和浮點型數(shù)組的賦值方式,這樣給它賦值,我們的系統(tǒng)中是會給你報錯的。
首先這個woman一共是5個字母,我再給它定義我這個數(shù)組的大小的時候,不能僅僅給它定義這5個字母是字符型數(shù)組的最后1個數(shù),我們是要給它空下來的那個數(shù),就是1個固定的字符型數(shù)組的1個結(jié)束標志為這個標志位1定是/0,你可以給它定義這個/0,你也可以不給它定義這個/0,不給它定義的時候,它自己會自動給它填上這個/0,就是我定義1個字符型數(shù)組的時候,它的系統(tǒng)在它最后1個存儲單元中給它規(guī)定了,這個存儲單元什么也不能存,就只能存儲1個結(jié)束的那個標志位,所以說我們這個woman它1共是5個字母,給它定義數(shù)組大小的時候,一定要大于等于六個,才能把這個woman給存得下,否則這個woman存不下的。
如果給它賦值的話就給它賦1個結(jié)束標志位,就是那個/0,不給它賦的時候會自動加上1個/0。
定義字符型的2維數(shù)組的時候也是一樣的,因為2維數(shù)組里面存的是很多個1維數(shù)組,就相當于2維數(shù)組里面是存的是很多串數(shù),所以說再定義2維數(shù)組它的大小的時候,第1個表達式就是它1共是幾個字符串,但是第2個表達式,列數(shù)1定要是那么多字符串中最長的那個字符串,還要加1,因為要留1個空間給它存它的結(jié)束標志,寫個0。
我們定義1個字符型的2維數(shù)組,A8081,是不是1共存80個字符串,而且它這80個字符串中最長的1個字符串1共是80個字符。
審核編輯:湯梓紅
-
單片機
+關注
關注
6032文章
44521瀏覽量
633087 -
C語言
+關注
關注
180文章
7599瀏覽量
136213 -
字符串
+關注
關注
1文章
577瀏覽量
20485
原文標題:單片機c語言組數(shù)怎么用,怎么定義和賦值
文章出處:【微信號:電子技術控,微信公眾號:電子技術控】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論