Yahoo奇摩知識+ 將於 2021 年 5 月 4 日 (美國東部時間) 終止服務。自 2021 年 4 月 20 日 (美國東部時間) 起,Yahoo奇摩知識+ 網站將會轉為唯讀模式。其他 Yahoo奇摩產品與服務或您的 Yahoo奇摩帳號都不會受影響。如需關於 Yahoo奇摩知識+ 停止服務以及下載您個人資料的資訊,請參閱說明網頁。

ONLY 發問時間: 電腦與網際網路程式設計 · 1 0 年前

遇到 C++ I/O的相關問題(讀檔判斷buffer)

遇到 C++ I/O的相關問題

程式如下

const MAX = 80;

char buffer[MAX];

ifstream infile ("example.txt");

ofstream outfile;

int i=0, j=0;

if (infile.is_open())

{

while (! infile.eof() )

{

infile.getline(buffer,MAX,',');

AfxMessageBox(buffer);

if(buffer=="Square") //判斷buffer裡面的值是否為Square

AfxMessageBox("成功 Squarw!");

if(buffer=="200")

AfxMessageBox("成功 200!");

}

infile.close();

}

else cout << "Unable to open file";

要怎麼判斷buffer中的值呢?

假設example.txt檔的內容為

Square,200,200,100,100

照我的寫法

判斷不出來@@

不知道是哪裡寫錯了

希望有人能指點一下

感謝阿~

2 個解答

評分
  • 光宇
    Lv 4
    1 0 年前
    最佳解答

    if(buffer=="Square") //判斷buffer裡面的值是否為Square

    改成

    if( strcmp(buffer,"Square")==0 ) //判斷buffer裡面的值是否為Square

  • 鳳琳
    Lv 5
    1 0 年前

    你的 buffer 又不是 string ,它沒有辦法直接用 == 來比較 , 使用 strcmp(); 或是改用 string class.

還有問題?馬上發問,尋求解答。