#include <stdio.h>
#include <windows.h>
using namespace std;
int main() {
char s[] = "Hello\n";
HANDLE stdout = GetStdHandle(STD_OUTPUT_HANDLE);
unsigned long cChars;
WriteConsole(stdout, s, lstrlen(s), &cChars, NULL);
}
結果調用WriteConsole結果時:error: declaration of '_iob' as array of references
包括標準輸入輸出錯誤
但是當我註釋掉stdio.h
,它編譯OK。這裏有什麼問題?
編譯器是MinGW。
它是否給文件名行號與錯誤一起?改變#include的順序是否改變了什麼? –
是的,錯誤指向標準輸出,這是問題,它是保留名稱。 – rsk82