c語言燙燙燙
Ⅰ C 語言代碼出錯為什麼顯示「燙燙燙」,而不是其它字
局部變數在沒有初始化時, c語言規范要求是隨機值.
但VC系列沒有按照這個規定來做, 而是把沒有初始化的棧空間賦值為0xCC.
於是 在輸出未初始化的局部變數字元串時,就會輸出
0xCC對應的字元. 而兩位代表一個漢字, 0xCCCC就是漢字燙.
Ⅱ C語言編程中怎樣可以用最簡單的方法故意輸出長串的「燙燙燙燙燙燙」亂碼
可以試試這個代碼
Ⅲ C語言出現 燙燙的亂碼 求助求助
一般出現這種情況就是你引用了你沒有初始化的內存空間的。輸出"燙燙燙燙"是因為vc會自動把未用函數的局部變數空間按位元組全部初始化為CC(打個比方,你定義一個10個元素的char數組,結果你初始化了2個元素,後面沒初始化,沒賦值,沒有使用,就變CC了)。CC CCH在Unicode的編碼中就是表示中文的「燙」,所以就是很多「燙」字。
Ⅳ c語言編譯時出現「燙燙燙燙燙燙燙燙燙」
字元數組沒有結尾符號,或者列印字元串的地址錯了
Ⅳ C語言運行時出現「燙燙燙燙燙燙燙燙燙」
分析
1、struct stu student[NUM]; //你不都說你定義了多個人,但只輸入了一次信息嗎。#define NUM 3/*人數*/
2、 case 2:print(student,NUM);break;//你調用輸出函數的時候NUM參數是輸出NUM個人,
3、因為只輸入一個student的信息,其他student[1]、student[2].......沒有值,直接輸出上次內存所存,這就是隨機的亂碼。
解決思路
方案1:
輸入信息的時候輸完NUM 次也就是3次。
方案2:
調用輸出的時候,只讓他輸出你所輸入信息的個數。
case 2: print(student,1);break; //這里參數二中NUM換成 1,因為你只輸入1次信息
方案 3: /**推薦方案*/
定義數組的時候初始化,使得其初始化都為0,這樣輸出的時候至少不會有亂碼
struct stu student[NUM] = {0};
或
struct stu student[NUM] ;
memset(student,0,sizeof(stu)*NUM);
Ⅵ C語言 字元串的輸出,為什麼輸出那麼多『燙』呢
輸出"燙燙燙燙"是因為vc會自動把未用函數的局部變數空間按位元組全部初始化為CC。而定義的字元數組空間不夠,所以就佔用了那部分不屬於自己的空間,因為cout輸出char*是要遇到空字元才停止的,所以便把那些垃圾都打出來了。
即是說在最後沒有字元串結束標志'