2023-03-29

C++新手常犯錯誤!

開場

在程式的撰寫過程中,若沒注意,一不小心就有可能使程式出bug,不論是Syntax Error(語法錯誤)、Name Error或邏輯錯誤,這些都能使我們坐在電腦前苦惱一陣子……
今天我這裡帶來了3個新手常犯的錯誤,希望可以提醒各位,別犯這個錯誤!
那麼,我們就開始吧!

code-g390deee06_1920.jpg

(圖片來源:https://pixabay.com

程式碼

1. 「=」與「==」

for(int i==0;i<50;i++)
發現錯誤了嗎?如果我不小心多按了一下「=」,這裡,就不是"指定運算子"而是判斷(i等於0)了!

2.「>>」與「<<」


#include <iostream>
using namespace std;

int main() {
	cout>>”hello world”;
	return 0;
}
在我使用紅框框起來的地方,看到了嗎?正常而言,我們應該是要寫「<<」而非「>>」喔!

3.if判斷的錯誤

#include <iostream>

using namespace std;

int main()
{
    int a=2,b=2,c=2;
    if(a==b==c)
        cout<<"case 1"<<endl;
    else
        cout<<"case 2"<<endl;
    return 0;
}
先看看以上的程式碼,你覺得會輸出甚麼呢?
答案是case 2,而非case 1!為什麼呢?
首先我們先來看看
if(a==b==c)
這裡,我們先判斷a是否等於b,而非常明顯的,答案是TRUE,也就是1,那接下來電腦就會要來判斷1是否等於2,答案是FALSE。
所以,電腦會執行else,也就是輸出case 2!

如果我想輸出case 1的話應該如何修改呢?
改成以下的形式就可以囉!
if(a==b&&a==c)

本站已開啟「留言編號」功能(技術提供者及其他資訊,詳見技術提供
本站自其他網站引進許多技術,受益良多,感激不盡!族繁不及備載,您可至技術提供查看本站引進之技術、技術提供者與其他資訊

1 則留言:

  1. 必須說,「>>」與「<<」對於新手來說真的容易搞混……我朋友剛接觸C++,就卡在這邊不知道怎麼記

    回覆刪除

留言注意事項:

勾選「通知我」可在後續有回覆時寄信給您!

使用Safari恐無法登入留言(只能以匿名方式留言)!

敬請詳細描述問題,以方便站方迅速判斷與解答!

依據本站免責聲明,本站得逕行刪除含有不適合存在於本站的言論與字詞的發言,敬請謹慎留言!