在C 中,問題是是否可以在For 迴圈初始化體中宣告不同類型的變數for 迴圈。考慮以下程式碼:
for(int i=0, j=0 ...
這會初始化兩個整數變數(i 和 j)。是否可以在這個初始化主體中定義一個 int 和一個 char?
技術上,有一個解決方法,儘管非常規:
for(struct { int a; char b; } s = { 0, 'a' } ; s.a < 5 ; ++s.a) { std::cout << s.a << " " << s.b << std::endl; }
這裡,我們定義了一個包含int和char 的結構體。 for 迴圈初始化此結構的實例,然後遞增循環體內的 int 成員。
雖然此解決方法滿足技術要求,但值得注意的是,由於可能會造成混亂,通常不鼓勵使用此模式與使用單獨的變數相比缺乏清晰度。
以上是可以在 C For 迴圈的初始化中宣告不同類型的變數嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!