Есть простейшая программа, выводит Unicode-строку:
#include <stdio.h>
#include <wchar.h>
wchar_t my_message[] = {'H', 'e', 'l', 'l', 'o', '\n', 0x00};
int main(int argc, char* argv[])
{
wprintf(my_message);
return 0;
}
Компилируем ее с помощью GNU C:
$ gcc wprintf.c -o wprintf
Все в порядке... Создается исполняемый файл wprintf, который при запуске выводит строку "Hello".
Попробуем компилировать с помощью GNU C++:
$ g++ wprintf.c -o wprintf
wprintf.c: In function `int main (int, char **)':
wprintf.c:8: `wprintf' undeclared (first use this function)
wprintf.c:8: (Each undeclared identifier is reported only once for each
function it appears in.)
WTF?! Почему GNU C++ не видит функцию wprintf?
То же самое и с другими стандартными C-функциями для Unicode строк (например, swprintf).
Пробовал следующее:
1. Использовать extern "C" при подключении wchar.h в исходнике:
extern "C" {
#include <wchar.h>
}
2. Указывать библиотеку libstdc++ при компиляции:
g++ wprintf.c -o wprintf -lstdc++
Ни то, ни другое не помогло.
Ответ на:
комментарий
от paxac
Ответ на:
комментарий
от paxac
Ответ на:
комментарий
от Deleted
Ответ на:
комментарий
от Den_Zurin
Ответ на:
комментарий
от Den_Zurin
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум wsprintf - ничего не понимаю (2001)
- Форум не получается разбить программу (2011)
- Форум Не удается вывести в терминал кириллицу (2017)
- Форум Хочу заюзать функцию cpufreq_get но компилятор ругаеться - какой ключ мне указать ? (2005)
- Форум _GNU_SOURCE по-умолчанию отключен? (2008)
- Форум помогите разобраться с qt (2004)
- Форум Почему код не компилится (2005)
- Форум wchar_t (2013)
- Форум [нубас] gcc и тестовый пример (2010)
- Форум математика (2005)