Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Qt и кроссплатформенное программирование С/С++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.09.2012, 20:06   #1
Кипящий чайник
Форумчанин
 
Регистрация: 17.12.2009
Сообщений: 101
По умолчанию Кириллица в lua

Пишу на Windows, использую MinGW. Подключил интерпретатор lua, но при выполнении скриптов на экран выводятся знакомые крякозябры вместо русского текста. А русский текст там жизненно необходим.
Вот программа на С++:

Код:
#include <iostream>
#include <locale>

#include <lua.hpp>
#include <lualib.h>
#include <lauxlib.h>

using namespace std;

int main()
{
    setlocale(LC_ALL, ".866");

    lua_State *l = lua_open();
    luaL_openlibs(l);

    luaL_dofile(l,"room1.lua");

    lua_close(l);

    wcout << L"Текст из экзешника." << endl;

    return 0;
}
И тот самый файл со скриптом room1.lua (только одна строчка):
Код:
 print "Текст из скрипта."
Текст из экзешника выводится корректно, а вот из скрипта чёрт-те что. Что делать?
Кипящий чайник вне форума Ответить с цитированием
Старый 13.09.2012, 07:45   #2
Кипящий чайник
Форумчанин
 
Регистрация: 17.12.2009
Сообщений: 101
По умолчанию

Поскольку мужиков здесь не нашлось, отвечаю сам: качаем Notepad++, пишем в нём скрипт и сохраняем файл в кодировке .866. Теперь текст выводится корректно.
Кипящий чайник вне форума Ответить с цитированием
Старый 13.09.2012, 11:34   #3
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,336
По умолчанию

2 Кипящий чайник
у всех мужиков терминал с utf8 и сырцы они пишут в utf8. и проблем 20-летней давности не имеют

Код:
#include <iostream>

extern "C" {
#include <lua.h>
#include <lualib.h>
#include <lauxlib.h>
}

using namespace std;

int main()
{
    lua_State *l = lua_open();
    luaL_openlibs(l);
    luaL_dofile(l,"room1.lua");
    lua_close(l);
    cout << "Текст из экзешника." << endl;
    return 0;
}


Цитата:
качаем Notepad++
качаем Vim // fixed
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 14.09.2012, 09:33   #4
Кипящий чайник
Форумчанин
 
Регистрация: 17.12.2009
Сообщений: 101
По умолчанию

А терминал у вас, случаем, не линуксовый, а? В лине-то у меня таких проблем не возникало.
Кипящий чайник вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Язык Lua. vovken1997 Свободное общение 2 30.05.2012 12:34
язык LUA Adilhan Помощь студентам 1 10.01.2012 23:48
ClanLib + Lua Alexandr-M Qt и кроссплатформенное программирование С/С++ 0 01.04.2011 12:36
Lua+Delphi? gulyavcev Общие вопросы Delphi 0 08.12.2009 14:04
Функции Lua apromix Общие вопросы Delphi 4 11.09.2009 10:30