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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.05.2012, 18:27   #1
LancX
Пользователь
 
Аватар для LancX
 
Регистрация: 30.04.2012
Сообщений: 52
По умолчанию CharToOem С++

Пищу программу. Нужно локально написать несколько русских слов, использовать #include <locale> нет возможности, CharToOem судя по описанию для этого и предназначен, видел примеры, но они у меня не работают. В чем может быть ошибка? Или как еще можно сделать?

Код:
#include <iostream>
#include <Windows.h>

void main()
{
char buf[10];
char str[10]="Русский";
CharToOem(str, buf); // здесь студия пишет ошибку str
cout<<buf<<endl;
}
Нужен способ без переключения шрифтов и без изменения кодировки всей программы.
При любом расчете, число, правильность которого для всех очевидна, становится источником ошибок.

Последний раз редактировалось Stilet; 01.05.2012 в 21:05.
LancX вне форума Ответить с цитированием
Старый 01.05.2012, 18:31   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,316
По умолчанию

В Code::Blocks работает и ваш вариант, а студии под рукой нет.
Попробуйте:
Код:
#include <iostream>
#include <Windows.h>
#include <iostream>
using namespace std;

int main()
{
char buf[10];
char str[10]="Русский\0";
CharToOem(str, buf);
cout<<buf<<endl;
}
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 01.05.2012, 18:40   #3
LancX
Пользователь
 
Аватар для LancX
 
Регистрация: 30.04.2012
Сообщений: 52
По умолчанию

Error 1 error C2664: 'CharToOemW' : cannot convert parameter 1 from 'char [16]' to 'LPCWSTR' c:\users\lancx\desktop\Тест\Тест\1. cpp 9
При любом расчете, число, правильность которого для всех очевидна, становится источником ошибок.
LancX вне форума Ответить с цитированием
Старый 01.05.2012, 18:47   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,316
По умолчанию

Попробуйте:
http://www.cyberforum.ru/cpp-beginne...ead518265.html
http://forum.vingrad.ru/forum/topic-.../view-all.html
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 01.05.2012, 19:29   #5
LancX
Пользователь
 
Аватар для LancX
 
Регистрация: 30.04.2012
Сообщений: 52
По умолчанию

Project->Properties->Configuration Properties->Character Set = Use Multi-Byte Character Set
в настройках вся соль, спс) все работает так как мне и нужно
При любом расчете, число, правильность которого для всех очевидна, становится источником ошибок.
LancX вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы с функцией CharToOem((( koutinho Общие вопросы C/C++ 3 12.01.2012 19:47
CharToOem ??? Revenholm Общие вопросы C/C++ 1 09.05.2009 13:32