這幾天我正在開發Windows編程。以下代碼不能在另一臺Windows電腦上運行,爲什麼?C++程序exe的兼容性
#include <stdio.h>
#include <Windows.h>
int main() {
TCHAR tcWindowsPath[MAX_PATH];
TCHAR tcCurrentPath[MAX_PATH];
GetWindowsDirectory(tcWindowsPath, MAX_PATH);
GetSystemDirectory(tcCurrentPath, MAX_PATH);
printf("%s \n", tcWindowsPath);
printf("%s \n", tcCurrentPath);
////////////////////////////////////////
}
你在「不工作」下的意思是什麼? exe不執行 - 因此提供錯誤代碼和操作系統版本。 – RbMm
不確定,因爲你還沒有告訴我們什麼是不工作的,如果你收到任何錯誤信息等你說的是,它不能在另一臺計算機上工作..... – Sorceri
如果你正在編譯VS 2015生成的標準命令行應用程序(使用默認設置),這在任何機器上都不會按預期工作。嚮導生成的代碼默認使用Unicode,即Windows上的UTF-16LE,但您的'printf'調用假定爲ANSI編碼。 – IInspectable