Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Alukard Integral
0 / 0 / 0
Регистрация: 03.11.2008
Сообщений: 6
#1

Проблема с руссификатором - C++

03.11.2008, 14:50. Просмотров 908. Ответов 6
Метки нет (Все метки)

Здравствуйте. Я новичок в С++, поэтому прошу не бить тапками.

Пишу русификатор для коддинга на MVS2005. То есть если это хреновина будет работать, то можно будет выводить на консоль кирилицу без вских дополнительных функций. Делал всё по практикуму Павловской, но от него давно уже нет толку. Почти уже заработало, но выдаёт ошибку доступа к памяти, на "return 0". Не подскажите, если не затруднит, в чём проблема и как это можно решить?
Код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//CyrIOS.h
#ifndef CYR_IOS_H
#define CYR_IOS_H
 
#include <iostream>
#include <iomanip>
#include <string>
#include <windows.h>
using namespace std;
 
#define MAX_STR_LEN 4096
 
class CyrOstream : public ostream
{
public: CyrOstream(_Uninitialized no_init) : ostream(no_init){}
        CyrOstream& operator << (const char*);
        CyrOstream& operator << (_Myt& (_cdecl * _f)(_Myt&));
 
 
 
private: char buf_[MAX_STR_LEN];
         char buf2_[MAX_STR_LEN];
 
};
 
extern CyrOstream cout_p;
 
#endif /*Cyr_IOS_H*/
#ifndef CYR_IOS_IMPLEMENETATION
#define cout_p cout
#endif;
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
//CyrIOS.cpp
#define CYR_IOS_IMPLEMANTATION
#include "CyrIOS.h"
 
 
CyrOstream &CyrOstream::operator << (const char* s)
{
    int n = strlen(s);
    strncpy(buf_,s,n);
    buf_[n] = 0;
    buf2_[n] = 0;
          CharToOemA(buf_, buf2_);
    cout << buf2_;
    return *this;
}
 
CyrOstream& CyrOstream::operator <<(_Myt& (_cdecl * _f)(_Myt&))
{
    cout<<_f; 
    return *this;
}
CyrOstream cout_p (_Noinit);
 
 
 
///main.cpp
#include "CyrIOS.h"
_Uninitialized a;
 
int main()
{
    CyrOstream cout = a;
    cout<<"Задолбал ваш С++";
    cout<< endl;
    cin.get();
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.11.2008, 14:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Проблема с руссификатором (C++):

Проблема... - MS Access
Добрый вечер! Такая проблема: На Главной форме имеются две подформы - одна Ленточная Артикул, а в другую подформу подключаются другие...

Проблема с Wi-Fi - Wi-Fi
У меня два ноутбука, оба подключены к WiFi , на одном из них WI-FI работает, а второй к WI-FI подключен но в интернет не заходит, пишет без...

проблема - Удаление вирусов
после того как почистила компютер от вирусов, перестало отoбражатся видео и музыка. флeш плеер переустанавливала, браузер тоже......

проблема - Удаление вирусов
Здравствуйте! Помогите решить проблему. После запуска ПК, через 2 минуты процесс svchost.exe запускается в 6 экземплярах, среди них три...

Проблема - PHP
Здравствуйте, помогите решить проблему, раньше это делал в лёгкую, сейчас не могу понять в чём проблема. ...

Проблема с XP - Windows XP
имеется сеть на пару десятков систем! винда разноообразная! от 98 до хр! поблема заключаеться в том что при загрузке хр тормозят! с 98...

6
Inlight
43 / 42 / 2
Регистрация: 17.09.2008
Сообщений: 98
03.11.2008, 15:10 #2
На MS VC++ 2008 всё работает. Скинь билдлог.
0
Alukard Integral
0 / 0 / 0
Регистрация: 03.11.2008
Сообщений: 6
03.11.2008, 16:11  [ТС] #3
Воть.
0
Вложения
Тип файла: txt БилдЛог.txt (3.9 Кб, 40 просмотров)
Inlight
43 / 42 / 2
Регистрация: 17.09.2008
Сообщений: 98
03.11.2008, 16:46 #4
Помощь - 0 error(s), 2 warning(s)
т.е. прога компилируется, запускается, но выдаёт ошибку при выполнении, типа read_error... , так? Тогда попробуй просто собрать прогу, а экзешник запустить отдельно. Ещё можешь попробовать переименовать проект из Помощь в что-нибудь с английскими символами (хотя врятли это из-за этого, но вдруг поможет..)
0
Alukard Integral
0 / 0 / 0
Регистрация: 03.11.2008
Сообщений: 6
03.11.2008, 16:50  [ТС] #5
Цитата Сообщение от Inlight Посмотреть сообщение
т.е. прога компилируется, запускается, но выдаёт ошибку при выполнении, типа read_error... , так? Тогда попробуй просто собрать прогу, а экзешник запустить отдельно. Ещё можешь попробовать переименовать проект из Помощь в что-нибудь с английскими символами (хотя врятли это из-за этого, но вдруг поможет..)
Не совсем. Выдаётся ошибка Unhandled exception at 0x104877f5 in Помощь.exe: 0xC0000005: Access violation reading location 0xccccccd0. По-нашему, говорит что вышёл за выделенную область памяти или что-то вэтом роде. Но как от это избавится-хрен его знает. Динамической памяти вроде не используем, поэтому ума не приложу из-за чего такая ошибка выскакивает.
0
Inlight
43 / 42 / 2
Регистрация: 17.09.2008
Сообщений: 98
03.11.2008, 17:12 #6
Попробуй по F11 прогнать, может заметишь чего. Мой билдлог, может быть поможет...
0
Вложения
Тип файла: zip BuildLog.zip (1.4 Кб, 20 просмотров)
Alukard Integral
0 / 0 / 0
Регистрация: 03.11.2008
Сообщений: 6
03.11.2008, 17:23  [ТС] #7
Цитата Сообщение от Inlight Посмотреть сообщение
Попробуй по F11 прогнать, может заметишь чего. Мой билдлог, может быть поможет...
Не знаю чем билдблог будет полезен.

F11 тоже мало что дал:когда натыкается на него компилятор, выкидывает куда-то и сразу появляется окно с сообщением ошибки:"Unhandled exception at 0x104877f5 in Помощь.exe: 0xC0000005: Access violation reading location 0xccccccd0.".

Люди, ПОМОГИТЕ!!
0
03.11.2008, 17:23
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.11.2008, 17:23
Привет! Вот еще темы с ответами:

Проблема с COM - Visual Basic
Hochu sdelat' application EXE , chtob rabotalo kak samostoyatel'moe prilozhenie i eshe predostablyalo objects kak COM-server (tipa Excel). ...

проблема с ie - Софт
Парни такая проблема: пользуешься инетом через Iе и после где-то минуты показывает окно майкрософт отправить ошибку или не отправлять, и...

Проблема - Pascal ABC
Есть прога unit MainForm; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ...

проблема с Like - MS Access
Почемуто не работает если ставить символ %. Если полное название писать то оно выбирает, а если первых два символа и потом ставить % то...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru