Lỗi: COUT không được khai báo trong C++

Loi Cout Khong Duoc Khai Bao Trong C



Bài viết này nói về một lỗi xảy ra khi lập trình bằng ngôn ngữ C++. Lỗi này là “COUT không xác định” hoặc “COUT không khai báo”, tùy thuộc vào phiên bản Ngôn ngữ C++ hoặc loại trình biên dịch của bạn. Để hiểu rõ hơn về lỗi này, trước tiên chúng ta hãy xác định mục đích của từ khóa “cout” trong Ngôn ngữ C++ cũng như thời điểm và địa điểm nó được sử dụng. “Cout” là một từ khóa trong ngôn ngữ C++, được sử dụng để in hoặc hiển thị đầu ra của mã của chúng tôi trong cửa sổ bảng điều khiển, chẳng hạn như “printl” và “printf” trong các ngôn ngữ khác như C và JAVA.

Để hiển thị dữ liệu bằng cách sử dụng “Cout”, dữ liệu chúng tôi muốn in được đặt trong một chuỗi hoặc luồng đầu ra tiêu chuẩn bằng cách sử dụng dấu nhỏ hơn hai lần (<<), được gọi là toán tử chèn trong Ngôn ngữ C++. Ví dụ: nếu ai đó muốn in cụm từ “Xin chào thế giới” thông qua mã của mình. Chúng ta sẽ phải viết “cout<<“Hello World”<







cú pháp

Thông báo do trình biên dịch đưa ra cho lỗi này được cung cấp bên dưới:



lỗi: 'cout' không được khai báo trong phạm vi này

Đây là một lỗi, vì vậy nó không có cú pháp. Nó có một thông báo mà chúng tôi đã chỉ cho bạn ở trên.



Ví dụ #01

Bây giờ, chúng tôi sẽ thực hiện các ví dụ để kiểm tra xem đó có phải là lý do duy nhất khiến lỗi này xảy ra hay nó xảy ra vì các lý do khác. Trong ví dụ này, chúng tôi sẽ thử in một giá trị chuỗi bằng cách sử dụng từ khóa “cout” và xem điều gì sẽ xảy ra. Với mục đích đó, chúng ta chỉ cần gõ “cout” và sau “cout”, chúng ta đã đặt các toán tử chèn, tức là “<<”. Sau các toán tử chèn, chúng tôi đặt chuỗi của mình trong dấu ngoặc kép, kết thúc lệnh của chúng tôi bằng từ khóa “endl”. Chúng tôi đã thảo luận về mục đích của “endl” trong phần giới thiệu của mình—vì vậy không cần phải thảo luận lại vấn đề đó ở đây.





Cuối cùng, chúng tôi đã trả về 0. Vì phương thức chính của chúng tôi có kiểu trả về là số nguyên. Bây giờ, chúng tôi sẽ thực thi mã của mình và xem điều gì sẽ xảy ra.



Mã của chúng tôi không thể thực thi thành công và đã gây ra lỗi. Hãy đọc kỹ lỗi và xem trình biên dịch đã hiển thị lỗi ở dòng nào và lỗi đó là gì. Thật không may, trình biên dịch không hiển thị bất kỳ số dòng nào, nhưng nếu chúng ta thấy thông báo lỗi, thì đó chính là thông báo mà chúng ta đang thảo luận ở đây. Điều này có nghĩa là chúng tôi biết lý do cho thông báo lỗi của mình. Bây giờ, chúng tôi sẽ giải quyết lỗi.

Để loại bỏ lỗi, chúng tôi đã đặt một tệp tiêu đề, iostream, trên mã của chúng tôi. Bây giờ, chúng tôi sẽ thực thi lại mã của mình và xem liệu điều này có giải quyết được lỗi của chúng tôi hay không. Sau khi đặt tệp tiêu đề hoặc thư viện ở đầu mã, chúng tôi có thể loại bỏ lỗi. Vì vậy, bằng cách chỉ đặt tệp làm tiêu đề, chúng tôi đã loại bỏ lỗi.

Ví dụ #02

Trong ví dụ này, chúng tôi đã đặt tệp tiêu đề của mình và cố gắng viết mã để nó không gây ra lỗi cho chúng tôi. Để làm như vậy, trong chức năng chính của chúng tôi, chúng tôi đã khai báo hai ký tự, “a” và “b”. Chúng ta đã chuyển “Xin chào” cho “a” và “Thế giới” cho ký tự “b”. Sau đó, ở dòng 5 và 6, chúng ta đã in các giá trị của “a” và b bằng cách sử dụng từ khóa cout. Và cuối cùng, chúng tôi đã trả về 0 vì chức năng chính của chúng tôi là kiểu số nguyên. Trong mã này, chúng tôi cũng đã nhập thư viện tiêu đề iostream của mình. Trong trường hợp chúng tôi gặp lỗi. Bây giờ, nhìn qua, chúng ta có thể nói rằng mã của chúng ta đã hoàn tất, sẽ không đưa ra bất kỳ lỗi nào và sẽ biên dịch thành công. Hãy thử và thực thi mã của chúng tôi để xem.

#include

int chính ( )

{

than * một = 'Xin chào' ;
than * b = 'Thế giới' ;
cout << một << kết thúc ;
cout << b << kết thúc ;
trở về 0 ;


}

Trình biên dịch một lần nữa đưa ra lỗi tương tự. Nhưng câu hỏi đặt ra là nếu chúng tôi đã nhập trong tiêu đề của mình thì tại sao chúng tôi lại gặp phải lỗi tương tự? Câu trả lời là trong lỗi. Nếu chúng tôi đọc kỹ lỗi, một thông báo khác được đính kèm có nội dung, 'ý bạn là 'std::cout'?'. Điều này có nghĩa là chúng tôi vẫn còn thiếu thứ gì đó trong mã của mình.

Để giải quyết lỗi, chúng tôi đã đặt “using namespace std;” sau tệp tiêu đề của chúng tôi. Bây giờ, chúng tôi sẽ thực thi mã của mình để xem liệu chúng tôi đã giải quyết được lỗi của mình chưa.

Chúng tôi đã nhận được đầu ra thành công bằng cách đặt “không gian tên std” sau tiêu đề. Chúng tôi đã có đầu ra như mong đợi. Chúng tôi đã in giá trị của “a” đầu tiên, đó là “Xin chào”, và sau đó, chúng tôi in giá trị của ký tự b, đó là “Thế giới”. Trong hình ảnh đầu ra, chúng ta có thể thấy rằng chúng ta đã thành công trong việc có được đầu ra mong muốn. Bây giờ, hãy thảo luận về nguyên nhân của lỗi. Từ khóa “cout” là một đối tượng được xác định trước của thư viện “iostream.h” hiển thị các giá trị trên các thiết bị đầu ra tiêu chuẩn. Nếu chúng ta đang viết một chương trình trong trình biên dịch C++ dựa trên Linux, thì chúng ta cần một không gian tên “std” trong chương trình của mình để “cout” giá trị của chúng ta.

Sự kết luận

Trong hướng dẫn này, chúng ta đã thảo luận về một lỗi, đây là một lỗi rất cơ bản và những người mới bắt đầu có thể mắc phải lỗi này khi thực hành mã của họ. Lỗi là “Undeclared Cout”, Chúng tôi đã thảo luận về nguyên nhân gây ra lỗi, tại sao lỗi này xảy ra và lý do chúng tôi gặp phải lỗi này. Chúng tôi cũng đã thực hiện các ví dụ nhiều lần để nhận lỗi, sau đó khắc phục lỗi và cho bạn thấy kết quả. Sau đó, chúng tôi cũng đưa ra các lỗi để bạn có thể hiểu thực tế tại sao lại xảy ra các lỗi này. Chúng tôi đã phát hiện ra nhiều lý do khiến các lỗi này xảy ra và đã giải quyết cũng như loại bỏ chúng. Tôi hy vọng hướng dẫn này sẽ hữu ích cho bạn khi làm việc với từ khóa “cout”.