1樓:
kaixingui2012的答案很正確.
我補充點:1.首先實體記憶體由一個一個的bit位組成,這些bit位只能儲存高低電平也就是01,無所謂字元還是int.
2.現實中的任何資料都可以轉化為一定結構的01組合. 3.
根據以上兩點我們可以把記憶體中的一堆01轉化為現實中的資料,比如整數,字元,而具體轉化為哪種資料要看我們的需要,比如4b的記憶體,我們可以轉化為4個字元,也可以轉化為1個int.
給你舉個例子,現有4個位元組的字元陣列a,我們要把int型資料0x01010101(十六進位制)存入其中,首先轉化為ascii碼,0x01的ascii碼就是1,所以直接賦值a[0]=1;a[1]=1;a[2]=1;a[3]=1
ps:老譚的話為了給新手降低難度,結果越說越糊塗,我只抓住一點,任何資料表示成01的二進位制後,我可以把它放在任何記憶體中.反之,記憶體中的01組合,我可以解釋成不同的資料.
2樓:匿名使用者
第一:這是一個很好的辦法 實現從一個 數字串中 取出多個整數 來。你學會使用就好
第二:char c[50]="12 34 65 -23 -32 33 61 99 25 44";//這明顯只是一個字串,沒錯,它存的就是字串!而且每個陣列元素位都一個字元。
第三:究竟腫麼就變成整數了?
istream strin(c,sizeof(c));
for(i=0;i<10;i++)
strin>>a[i];//就這樣就變成了。
這裡的關鍵是輸入流中對》的過載實現的。因為a[i]是個整型變數,strin>>a[i];在操作時,就會將讀到的數字 字串 轉換成整型來儲存到變數中去!
3樓:匿名使用者
由於程式將字串c當成輸入,將字串輸入後藉助標準輸入程式(由strin>>a[i];啟動)將一個一個的整數分次輸入到陣列中,這個程式是由iostream庫函式提供的,與你用鍵盤輸入這些整數時處理過程是一樣的。
c++ 16進位制字串如何流轉為字元陣列。
4樓:雨諾與諾
首先擷取,2個擷取一次
讓後把字元轉換為10進位制的整數,如ac
int sum=0;
if(c==‘a’)
再賦值給陣列。
C 對字元陣列排序,c 中對於幾組字串的升序或降序排序怎麼做???
風若遠去何人留 與其它排序類似,字元陣列排序也是根據一定演算法,如冒泡法,將各個項值進行比較,並通過賦值交換位置即可。對於字元陣列,賦值和比較均與一般物件或變數不同。1 字元陣列比較 需要呼叫strcmp函式。int strcmp char s1,char s2 按照ascii碼比較,當s1和s2相...
c語言問題如果字串陣列含有多個0那要怎么
字串中不應該 0 的,這個在字串中是作為字串結束標誌存在的 c語言,字元陣列中最後乙個字必須為 0 為什麼錯?不是字元陣列中最後乙個字元必須為 0 如果字元陣列中存放的是乙個字串,則最後乙個字元應當 0 0 是結束符號,這樣當輸出這個字串時,只須輸入陣列名就可以,輸出函式會自動輸出陣列中的字元,直到...
C中如何將輸入的字串賦值到陣列
陳學陽 改用list吧.方法一是沒有new 沒有分配空間 方法二是在new的時候沒有指定大小,預設是0個元素,所以對其任意乙個元素賦值都是越界.在c 中,陣列一般用來存放大小確定的資料.如果陣列大小未知,建議使用list lista new list a.add we messagebox.show...