Код: Выделить всё
#include
int main(int argc, char* argv[])
{
for (int i = 0; i < argc; i++)
{
std::cout
Hello.exe う
< /code>
Тогда ничего не напечатано. И, как ни странно, содержание этого персонажа, записанный в ARGV, составляет 3F
Что я попробовал
(1) Однако, если я напрямую печатаю этот символ в своем коде, кодирование было бы правильным в памяти, и символ может быть напечатан на stdout.
Код: Выделить всё
SetConsoleOutputCP(CP_UTF8);
printf("う")
Код: Выделить всё
#include
int wmain(int argc, wchar_t** argv)
{
for (int i = 0; i < argc; i++)
{
std::wcout
Подробнее здесь: [url]https://stackoverflow.com/questions/79668459/c-argv-with-utf-8-values-are-incorrect-in-the-program[/url]