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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.10.2011, 06:47   #1
Rin
Негодник
Форумчанин
 
Аватар для Rin
 
Регистрация: 10.11.2009
Сообщений: 880
По умолчанию Ошибка при компиляции.

В чем собственно причина ошибки в этом коде? Взято из книги Подбельского на 112-113 стр(жаль книга древняя, но зато понятная).
Код:
#include "iostream.h"
#include "conio.h"
void main (void)
{ char *computer=(char *)0x000FFFE;
   cout << "\n прога выполняется на ";
   switch (*computer)
  {
      case (char)0xFF: cout << "эвм типа IBM PC. "; break;
      case (char)0xFE: cout << "эвм типа IBM PC XT. "; break;
      case (char)0xFD: cout << "эвм типа IBM PCjr. "; break;
      case (char)0xFC: cout << "эвм типа IBM PC AT. "; break;
      default: cout << "неизвестный тип эвм";
  }
  getch();
}
Предположительно(при переводе с анг. на рус. текста ошибки) это закрытий участок памяти. Ось - SP3 Zver. Юзаю "С++ Builder 6".
Ошибка на картинке
Изображения
Тип файла: jpg Безымянный.jpg (38.6 Кб, 57 просмотров)
Если помог, проси поставить минус. Будь оригинален!
Rin вне форума Ответить с цитированием
Старый 07.10.2011, 07:12   #2
TinMan
Форумчанин
 
Аватар для TinMan
 
Регистрация: 05.09.2011
Сообщений: 869
По умолчанию

Ты пытаешься выполнить под виндой досовскую прогу. Она честно лезет в системную память, полагая, что так и нужно )). Лучше найди виндусовые примеры для обучения.

Только это ошибка не компиляции! Это ошибка выполнения.
Предпочитаю на "ты".
TinMan вне форума Ответить с цитированием
Старый 07.10.2011, 07:35   #3
Rin
Негодник
Форумчанин
 
Аватар для Rin
 
Регистрация: 10.11.2009
Сообщений: 880
По умолчанию

Спасибо, TinMan(Жестянщик 0_о). Я долго пытался отрыть книгу нормальную. Перелапотил штук 5. По первым 50 страницам мне "всё стало понятно" и над ними было произведено действие "shift+del". Этот пример показывает работу с указателями, и код понятный (хоть и не рабочий). Мне попросту срочно надо освоить С++, потом OpenCL, и к этому разобраться, как использовать технологию CUDA. И собрав воедино сие мечтаю сделать графический движок со всеми наворотами. Дипломный проект такой хочу замутить, ибо я на 5 курсе.
Если помог, проси поставить минус. Будь оригинален!
Rin вне форума Ответить с цитированием
Старый 07.10.2011, 07:44   #4
TinMan
Форумчанин
 
Аватар для TinMan
 
Регистрация: 05.09.2011
Сообщений: 869
По умолчанию

Пожалуйста )). План несколько сжатый, по-моему. Вникай, там видно будет ). Посоветовать книгу не смогу, к сожалению..
Цитата:
Сообщение от Rin Посмотреть сообщение
TinMan(Жестянщик 0_о)

"The Tin Woodman, sometimes referred to as the Tin Man"
Предпочитаю на "ты".
TinMan вне форума Ответить с цитированием
Старый 07.10.2011, 08:06   #5
Rin
Негодник
Форумчанин
 
Аватар для Rin
 
Регистрация: 10.11.2009
Сообщений: 880
По умолчанию

Ничего, Pascal с нуля за полтора месяца(начиная с терминов "var", "const", "процедуры и фунуции" и заканчивая потоками и чуть-чуть WIN32 API) выучил . Думаю и с этим разберёмся. Мне это интересно!
Цитата:
"The Tin Woodman, sometimes referred to as the Tin Man"
Я предполагал, но лучше спросить, чем строить догадки .
Если помог, проси поставить минус. Будь оригинален!
Rin вне форума Ответить с цитированием
Старый 07.10.2011, 09:07   #6
Kukurudza
Форумчанин
 
Регистрация: 02.06.2011
Сообщений: 282
По умолчанию

а тут случайно ошибка не в том, что вместо char надо юзать wchar_t ?
Kukurudza вне форума Ответить с цитированием
Старый 07.10.2011, 10:45   #7
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,706
По умолчанию

нет

................................... ..
p51x вне форума Ответить с цитированием
Старый 07.10.2011, 11:34   #8
Blade
Software Engineer
Участник клуба
 
Аватар для Blade
 
Регистрация: 07.04.2007
Сообщений: 1,618
По умолчанию

Цитата:
Сообщение от Rin Посмотреть сообщение
Мне попросту срочно надо освоить С++, потом OpenCL, и к этому разобраться, как использовать технологию CUDA. И собрав воедино сие мечтаю сделать графический движок со всеми наворотами. Дипломный проект такой хочу замутить, ибо я на 5 курсе.
Самому не смешно?
Вы либо совершенно не представляете то, о чем говорите, либо не вполне адекватны.
Мужество есть лишь у тех, кто ощутил сердцем страх, кто смотрит в пропасть, но смотрит с гордостью в глазах. (с) Ария
Blade вне форума Ответить с цитированием
Старый 07.10.2011, 12:32   #9
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2Rin
как человек, который не знает, что такое виртуальная память и как она связана с физической ВООБЩЕ что-то может написать? тем более на с/с++

2TinMan
Цитата:
Она честно лезет в системную память, полагая, что так и нужно ))
в какую еще "системную" память? он обращается по виртуальному адресу, который видимо не отображается на физический, вот и ловит исключение при разыменовании
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 вне форума Ответить с цитированием
Старый 07.10.2011, 13:02   #10
Rin
Негодник
Форумчанин
 
Аватар для Rin
 
Регистрация: 10.11.2009
Сообщений: 880
По умолчанию

pproger, а с чего вы взяли , что я не знаю про виртуальную память и как она связана с физической? Про страницы, разбитые на 4 Кб, про биты присутствия виртуальной странички в физ памяти и т.д.Расскажите мне про сегментную, страничную и сегментно-страничную организацию, которую я по дисциплине "Организация ЭВМ и систем" изучал. А ещё можете мне поведать про разные DLL типа ntdll, kernel, hal. Про то, что в ОС есть, оказывается, ядро, которое защищено, и просто так не залезть туда. Что процессор работает в реальном режиме и защищённом. Мне всегда нравилась сравнение форумов:
"Американский форум. Вы задали вопрос, вам дали ответ.
Еврейский форум. Вы задали вопрос, вам задали вопрос.
Русский форум. Вы задали вопрос, и вам долго и nxfntkmyj разжёвывают, какой вы му*ак."
Так к чему я веду? Ах, да. Я прихожу на форум за помощью, а не за упрёками, за которыми ничего не стоит.

Blade, почему мне должно быть смешно? И, пожалуйста, разъясните Ваше высказывание:
Цитата:
Вы либо совершенно не представляете то, о чем говорите, либо не вполне адекватны.
Если помог, проси поставить минус. Будь оригинален!

Последний раз редактировалось Rin; 07.10.2011 в 13:26.
Rin вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка при компиляции Dario Общие вопросы C/C++ 2 05.04.2011 21:45
Ошибка при компиляции vovchok777 Общие вопросы C/C++ 1 26.12.2010 16:07
Ошибка при компиляции DKENT Общие вопросы Delphi 4 10.09.2010 15:31
Ошибка при компиляции Коля-Коля Общие вопросы Delphi 0 09.09.2010 18:38
Ошибка при компиляции haste39 Общие вопросы C/C++ 4 13.11.2009 00:24