01/10/2018, 08:53

Lỗi "expected an identifier" khi chạy code

Khi e dùng code này:


mục đích là để đợi người dùng nhấn enter thì code chạy tiếp, nhưng do không chạy được, và code do tìm trên mạng nên e không biết cách khắc phục, em không biết là do visual của mình hay do code nên mong được giúp đỡ, đây là error:
(lỗi đều thuộc dòng có chữ max, cảm ơn đã đọc!

edit: đây là code, bạn nào chạy thử giúp mình!

#include <limits>

void PressEnterToContinue()
{
std::cout << "Press ENTER to continue… " << flush;
std::cin.ignore( std::numeric_limits std::streamsize ::max(), ‘ ’ );
}

rogp10 viết 11:09 ngày 01/10/2018

Bạn viết liền lại chứ viết vậy nó không hiểu.

Dee Pink viết 10:54 ngày 01/10/2018

mình đã xóa hết dấu cách cũng vậy à, bạn chạy thử code giúp mình với! @rogp10

Tao Không Ngu. viết 11:04 ngày 01/10/2018

HI Dee Pink.
Bạn học lại C/C++ cơ bản đi. Macro max(a, b); @_@!

Dee Pink viết 11:02 ngày 01/10/2018

a,b là cái gì vậy bạn?
source code: http://www.cplusplus.com/forum/articles/7312/
đã bảo là code mình tìm chứ k phải code mình viết, cái thứ 2 là lỗi này k liên quan đến việc thiếu tham số a,b nha @Phong_Ky_Vo

Tao Không Ngu. viết 11:01 ngày 01/10/2018

HI Dee Pink.
Bạn xem code #define hàm max ở đâu không @@!.
Khi tiền biên dich nó thay max() bằng đoạn code khác nên dẫn đến lỗi. @
@!

Dee Pink viết 10:56 ngày 01/10/2018

chắc là nó đã thay gì khác dẫn đến code sai nhưng mình k có define max gì hết, k include algorithum luôn (đã include nhưng k có tác dụng)

Khoa NTA viết 11:06 ngày 01/10/2018

Code này mình chạy thử trên cpp.sh và máy mình vẫn bình thường mà bạn (sau khi thay thế flush bằng std::flush). Bạn thử “Go to definition” xem, nó được định nghĩa ở đâu, max trong hình là macro, không phải cái mà bạn cần sử dụng. Kết quả (của đoạn code) trả về là giá trị lớn nhất của kiểu std::streamsize có thể chứa được.
Đừng include lung tung, chỉ include ‘iostream’ và ‘limits’, đóng các project khác nếu còn đang mở song song.
Lưu ý cho bạn là: không phải đoạn code nào cũng đem vào compile rồi chạy khi không hiểu nó đang làm gì Nếu ngay từ đầu, bạn đưa link source thì vấn đề giải quyết nhanh hơn đó.

Tao Không Ngu. viết 11:06 ngày 01/10/2018

HI Dee Pink.
@_@!
http://stackoverflow.com/questions/7035023/stdmax-expected-an-identifier.

Dee Pink viết 10:58 ngày 01/10/2018

@aliston @Phong_Ky_Vo đúng rồi bạn ạ, do cái windown.h, tại code nó cần vài hàm trong windown.h nên phải dùng, mình đã thêm #define NOMINMAX trước khi #include windown.h, cảm ơn nhiều <3

//lần sau sẽ rút kinh nghiệm khi đưa source code k đúng lúc! ~_~

Bài liên quan
0