1:復合語句也被稱為語句塊,它至少要包含兩條語句死**的英文是dead code。是指在程式操作過程中永遠不可能被執行到的**。但是你不妨在語句裡寫個空也行,只不過這種操作必然會被編譯器過濾掉
2:死**
通過aqtime覆蓋率的分析就可以發現所有的永遠都不會執行到的**,但是與程式無關的**卻不一定能夠全部發現。
消除死**(dce)在某些情況下,編譯器可以判斷出某些**根本不影響輸出,所以編譯器會消除這些**。也可以使用優化作用進行消除。
3:在乙個表示式中
只要除法中沒有浮點數或者沒有顯式轉換,那麼就會被約掉精度。
4:write函式所在的標頭檔案為
write有兩種用法。一種是:
ssize_twrite(int handle, void *buf, int nbyte);
handle 是檔案描述符;
buf是指定的緩衝區,即指標,指向一段記憶體單元;
nbyte是要寫入檔案指定的位元組數;返回值:寫入文件的位元組數(成功);-1(出錯)
write函式把buf中nbyte寫入檔案描述符handle所指的文件,成功時返回寫的位元組數,錯誤時返回-1.
另一種是:write(const char* str,int n)
str是字元指標或字元陣列,用來存放乙個字串。n是int型數,它用來表示輸出顯示字串中字元的個數。
write("string",strlen("string");表示輸出字串常量
5:請問下面的程式一共輸出多少個「-」?12
3456
789int
main(
void
)
return
0
;
}
fork型別的題目
fork(); // i=0
printf("-"); // buffer="-"
fork(); // i=1
printf("-"); // +1
printf("-");
printf("-")
fork(); // i=1
printf("-"); // +1
printf("-")
fork()系統呼叫的特性,5:建構函式中變數的初始化順序是按其定義的順序,與初始化列表中的順序無關。所以一定要注意。
Day13刷題總結
string s1 new string xyz 建立了string型別的內容為xyz的s1物件 string s2 new string xyz 建立了string型別的內容為xyz的s2物件 boolean b1 s1.equals s2 比較s1物件和s2物件的內容相等,返回true。bool...
牛客 C 刷題day47
1.不能認為是原子操作,a是全域性變數,在記憶體中,則 a一般被分為從記憶體取a到暫存器 回寫到記憶體三步.兩個執行緒併發執行以下 假設a是全域性變數,那麼以下輸出 哪個是可能的?int a 1 void foo 解析假設執行緒x和y同時執行,x和y可隨時被搶占,a的初始值為1 a 3,2 y先執行...
牛客 C 刷題day25
1.在乙個物件未建立起來時通常用的是拷貝建構函式,而物件建立起來之後的複製拷貝就需要使用賦值運算子過載了。拷貝建構函式形式如下 cexample const cexample c 就是我們自定義的拷貝建構函式。可見,拷貝建構函式是一種特殊的建構函式,函式的名稱必須和類名稱一致,它必須的乙個引數是本型...