Tôi đang cố gắng biên dịch chương trình C của mình trong Ubuntu 9.10 (gcc 4.4.1).Lỗi biên dịch: memset không được khai báo trong phạm vi
Tôi nhận được lỗi này:
Rect.cpp:344: error: ‘memset’ was not declared in this scope
Nhưng vấn đề là tôi đã bao gồm trong tập tin cpp của tôi:
#include <stdio.h>
#include <stdlib.h>
Và cùng một chương trình biên dịch tốt dưới Ubuntu 8.04 (gcc 4.2. 4).
Vui lòng cho tôi biết tôi đang thiếu gì.
Điều tôi vẫn chưa hiểu là tại sao nó biên dịch tốt trên các phiên bản cũ hơn của gcc & ubuntu chứ không phải trên các phiên bản mới hơn. Bất cứ ai có thể giải thích lý do tại sao? – Dennis
@ Dennis: có lẽ vì tiêu đề cần thiết '' đang được '# include'd gián tiếp thông qua một số tiêu đề' # include'd khác trong cấu hình gcc/Ubuntu cũ của bạn. –
@Dennis Adding -fpermissive cho các tùy chọn gcc cũng có thể giúp đỡ trong những trường hợp lạ, mặc dù nó chỉ là một workaround – emu