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

ошибка при компиляции программы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ LNK2019 и LNK1120 http://www.cyberforum.ru/cpp-beginners/thread645754.html
Программа состоит из 3ех файлов: names.h #ifndef NAMES_H_ #define NAMES_H_ namespace SALES { const int QUARTERS = 4; struct Sales { double sales;
C++ как исправить Ошибка 8 error C2259: Tabl: невозможно создать экземпляр абстрактного класса имеется абстрактный класс, у нее есть 4 виртуальных функций: запись и чтение с помощью С и С++ имеется класс Tabl производный от абстрактного класса там у меня происходит реализация этих 4-х... http://www.cyberforum.ru/cpp-beginners/thread645749.html
C++ Разноцветная консоль
Всем доброго времени суток. Возник вопрос - как сделать так, чтоб в консоли текст был разноцветным (ну к примеру чтоб "hello" печатолась зеленым, а "world" красным). Есть команда color, но это...
какую библиотеку надо подключать чтоб работала функция _getch() и функция cin.get() C++
какую библиотеку надо подключать чтоб работала функция _getch() и функция cin.get()
C++ Ввод данных в вектор http://www.cyberforum.ru/cpp-beginners/thread645695.html
Я хочу,чтобы пользователь вводил номер и он сразу записывался в вектор,а не записывать числа в массив и только потом заполнять вектор,но у меня ввод данных прекращается только при вводе конца...
C++ невидимый курсор Помогите реализовать невидимый курсор в консоли (он постоянно мигает и мешает). В интернете порылся, но так ничего нормально, работающего не нашели подробнее

Показать сообщение отдельно
alsav22
5426 / 4821 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
03.09.2012, 17:05
Цитата Сообщение от lexflax Посмотреть сообщение
есть еще такая формулировка на сайте
Там ещё есть и код функции есть:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
int getboot(BOOT *boot, int drive)
{
  cb.first_sect = 0;
  cb.nsect = 1;
  cb.buf = (void*)boot;
  
  _BX  = FP_OFF(&cb);
  _DS = FP_SEG(&cb);
  _CX  = 0xffff;
  _DX  = 0;
  _AX  = drive;
  
  asm int 25h
 
  // Извлекаем из стека оставшееся там после
  // вызова прерывания слово
  asm pop ax
  asm jc err
 
  return(0);
err:
  return(1);
}
Тут, как я понимаю, часть кода не ассемблере. Как правильно его вставить, я не знаю. Если написать так:
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
int getboot(BOOT *boot, int drive)
{
  cb.first_sect = 0;
  cb.nsect = 1;
  cb.buf = (void*)boot;
  _asm
  {
  
  _BX  = FP_OFF(&cb);
  _DS = FP_SEG(&cb);
  _CX  = 0xffff;
  _DX  = 0;
  _AX  = drive;
  
  int 25h
 
  // Извлекаем из стека оставшееся там после
  // вызова прерывания слово
  pop ax
  jc err
  }
  return(0);
err:
  return(1);
}
то компилятор выдаёт, в строчках, где идёт присвоение _BX - _AX: " синтаксическая ошибка во встроенном коде на языке ассемблера в "код операции". Да, ещё перед функцией нужно ещё эту структуру добавить:
C++
1
2
3
4
5
6
struct
{
  unsigned long first_sect;
  unsigned nsect;
  void *buf;
} cb;
Добавлено через 3 часа 2 минуты
Поспрашивал на форуме. Если даже получится такую прогу написать, то ОС работать ей не даст. Привелегии, для такого доступа к жёсткому диска, у пользовательского приложения недостаточны.

Добавлено через 50 минут
И компилировать такую прогу нужно DOS-компилятором (так пишут на форуме).
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru