我對編程世界相當陌生,我有一個學校任務來創建一個包含if循環的簡單程序。 基本上,我想我的代碼返回真正如果一個大於18,並且假如果一個小於18.我也想一個由一個每次增加canTakeRoadtest回報false。當我運行我的代碼,我得到的是爲什麼我的布爾值返回一個整數?
「我是0歲。
我可以把我的路試。0」
我不知道爲什麼BOOL canTakeRoadtest將返回一個整數,並且爲什麼a沒有遞增。任何幫助將不勝感激,我爲這個簡單的問題表示歉意,但我們都從某處開始!
我的編碼環境是Eclipse Neon,如果它有所不同。
#include <iostream>
using namespace std;
int main() {
//Local Variables
int a = 0;
bool canTakeRoadtest = false;
//If Loop
if (a >= 18) {
canTakeRoadtest = true;
cout << "I'm ready!\n";
} else {
canTakeRoadtest = false;
cout << "I am " << a << " years old.\n";
cout << "I can take my road test. " << canTakeRoadtest << endl;
a++;
}
//return 0;
}
在引擎蓋下,布爾值是整數。 0是錯誤的,其他的都是真的。使用循環來增加年齡,直到你命中18爲止。 – Tarik
@Tarik不正確;例如某些實現只允許'0x01'作爲'true'的表示形式。 –
@ M.M這是按照語言規範的標準行爲嗎? – Tarik