c練習題 龍旗控股

2021-08-21 21:57:32 字數 1385 閱讀 7994

【龍旗控股】

1、windows nt下的32位機執行環境下:

char str = 「welcome to 51_cc++」;

int array = ;

char *p = str;

int  n;

int func( int a )

請計算:strlen(str), sizeof(str), sizeof(array), sizeof(p), sizeof(n), 如果函式func引數傳遞陣列array,那麼sizeof(a)呢?

18 19 36 4 4 4

2、請觀察下列程式執行時是否會出現問題,若有,請指出問題,若不存在問題,請指出程式迴圈的次數

#define max_size 255

void main()

}3、新增下面粗斜體部分**的初衷是為了給gui_show_image這句**的執行加上限制條件,請問這樣修改有沒有什麼隱患,若有,該如何修改?

...................

gui_push_clip();

#ifdef aaa

if (show_status == mmi_true)

#endif

#ifdef bbb

gui_show_image(x , y , image_id);

#endif

gui_pop_clip();

update_dt_display();

...................

//這段程式如果定義了aaa,也定義了bbb完全能夠滿足提議,給函式加上了限制條件,但若只定義了aaa,沒有定義bbb程式也會執行,與一開始的想法就不相符了

4、請問下面程式執行後會出現什麼問題,該如何修改,另外,從培養良好的程式設計規範角度看,哪些地方需要修改?

void getmemory(char *p)

void main()

//傳引數是值傳遞,

p是臨時空間,

不會改變str指向,

1.不能申請空間。2.會發生記憶體洩漏

2.char* getmemory(void)

void main()

//p是臨時空間,出了這個函式空間被釋放,應改為按 static

char p =

「51c++」;

3.void getmemory(char **p)

void main()

//最後加上free(str);

4.void main()

}//free(str);str變為野指標,指向隨機,

if(str != null)

不能作為判定條件

龍書 理論練習題(一)

文法1 e e t t t t f f f id文法2 e t e t t f t f f id 文法3 e e t t t t f f f id 三個文法均包括兩個運算 和 但在結合性和優先順序的處理上有所不同 文法1左結合,先 後 文法2右結合,先 後 文法3左結合,先 後 編譯器將高階語言編寫...

C 指標練習題

1.耶穌有13個門徒,其中有乙個就是出賣耶穌的叛徒,請用排除法找出這位叛徒 13人圍坐一圈,從第乙個開始報號 1,2,3,1,2,3 凡是報到 3 就退出圈子,最後留在圈內的人就是出賣耶穌的叛徒,請找出它原來的序號 使用迴圈鍊錶實現要求 lzy 2011 8 1 include include us...

練習題c (一)

1.計算字串最後乙個單詞的長度,單詞以空格隔開。include include using namespace std int main 2.計算最少出列多少位同學,使得剩下的同學排成合唱隊形 說明 n位同學站成一排,老師要請其中的 n k 位同學出列,使得剩下的k位同學排成合唱隊形。合唱隊形是指這...