Как я могу прочитать Unicode и числовые аргументы из командной строки в C для Windows? - PullRequest
1 голос
/ 13 марта 2011

У меня есть этот код:

#include "stdafx.h"
#include <windows.h>
#include <conio.h>



int _tmain(int argc, _TCHAR* argv[])
{
    LPCTSTR f = argv[1];
    DWORD n = atoi(argv[2]);
    return 0;
}

Я хочу прочитать Unicode-строку и число.Это то, что я получаю после компиляции:

ошибка C2664: «atoi»: невозможно преобразовать параметр 1 из «_TCHAR *» в «const char *»

1 Ответ

3 голосов
/ 13 марта 2011

Вместо использования atoi необходимо использовать _ttoi.Это потому, что atoi принимает только строки ASCII, когда вы пытаетесь передать ему строку UTF-16.Кстати, не включайте conio.h это не стандартный заголовочный файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...