Tôi đang thử một ví dụ từ sách C++ của Bjarne Stroustrup, ấn bản thứ ba. Trong khi triển khai một hàm khá đơn giản, tôi nhận được lỗi thời gian biên dịch sau:lỗi biên dịch C++: ISO C++ cấm so sánh giữa con trỏ và số nguyên
error: ISO C++ forbids comparison between pointer and integer
Điều gì có thể gây ra điều này? Đây là mã. Lỗi nằm ở dòng if
:
#include <iostream>
#include <string>
using namespace std;
bool accept()
{
cout << "Do you want to proceed (y or n)?\n";
char answer;
cin >> answer;
if (answer == "y") return true;
return false;
}
Cảm ơn!
y trong mã của bạn là một chuỗi chữ (dấu ngoặc kép) ' ""', một char chỉ là (dấu nháy đơn) '''' – Alex
Kiểm tra đánh máy của bạn. Ví dụ trong Stroustup có 'char answer = 0;' và 'if (answer == 'y') trả về true;'. –