Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> PEEK в C++, Не работоет программа... 
:(
    Опции темы
Папараццы
Дата 3.11.2006, 11:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



Такой вот код  
Код

#include <stdio.h>  
#include <conio.h>
#include <dos.h> 
 int main (void) 
 {
       int U = 0 ; 
       U = peek(0*0400 , 0*0017) ;
       
    if (U & 1)
     printf("Sag shift basilib") ; 
    else 
     printf("OFF") ; 
    if (U & 2) 
      printf("Sol shift basilib") ; 
    else 
     print("OFF" ) ; 
}     
 }


Программа для проверки левого и правого SHIFTa....Компилятор выдаёт ошибку 
'peek' undeclared (first use this function) Компилятор DEV C++ .Билдер тоже что то похожеее... 
Если есть варианты почему так ....


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
Sartorius
Дата 3.11.2006, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: 8
Всего: 37



Цитата

       U = peek(0*0400 , 0*0017) ;

Ты на basic раньше писал?  smile  Думается ты хочешь получить то, что лежит по 0400:0017 тада нада  так : 
 U = * ((int *) 0x04017);
PM MAIL ICQ   Вверх
Папараццы
Дата 3.11.2006, 14:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



Не я лабораторку пишу по С++ сам на PHP пишу только странно я думал что работать будет...Сейчас на работе вечером проверю как там....Я знал что int86  эт клавиатурное прерывание ... И в Винде не работоет..а может и работоет....  smile 


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
dumb
Дата 4.11.2006, 04:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 8
Всего: 158



1. 0040h:0017h
2. какие dev-c, какие билдеры?! - DOS! Borland C++ 3.1
3. странная какая-то "лабораторка по C++"...
PM MAIL   Вверх
Папараццы
Дата 4.11.2006, 23:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



А если этот компилятор запишу то тодкод работать будет ? 


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
bsa
Дата 5.11.2006, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Цитата(Папараццы @ 4.11.2006,  23:37)
А если этот компилятор запишу то тодкод работать будет ?

А тебе критично именно с шифтом работать? Может достаточно будет обойтись getch(), getche(), kbhit()?
PM   Вверх
Папараццы
Дата 5.11.2006, 11:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



Не просто интересно почему так получается ... А перечисленные я ваше не знаю 
Кстати 3.1 Борланд такую ошибку выдаёт 
 Function 'print' should have a prototype smile  smile 


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
Sartorius
Дата 5.11.2006, 11:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1568
Регистрация: 18.7.2006
Где: Ivory tower

Репутация: 8
Всего: 37



не print, а printf.... Тебе нужет компилятор реального режима, что бы обратиться к той области памяти, к которой ты хочешь.
PM MAIL ICQ   Вверх
Папараццы
Дата 5.11.2006, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



printf тоже самое выдаёт

Добавлено @ 15:51 
 U = * ((int *) 0x04017);  пишет что Pointer не там пременил


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
bsa
Дата 5.11.2006, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



А ты #include <stdio.h> не забыл в начало файла добавить?

Добавлено @ 15:53 
Цитата(Папараццы @ 5.11.2006,  15:47)
printf тоже самое выдаёт

Добавлено @ 15:51 
 U = * ((int *) 0x04017);  пишет что Pointer не там пременил

Лучше подобными вещами не заниматься.
Да, кстати, ты пути не забыл настроить в своем BC 3.1?
PM   Вверх
dumb
Дата 5.11.2006, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 8
Всего: 158



Цитата(Папараццы @  5.11.2006,  15:47 Найти цитируемый пост)
U = * ((int *) 0x04017);  пишет что Pointer не там пременил

совет был неправильный - эта строчка пытается считать память по адресу ds:0x04017.
тебе же надо считать 0x40:0x17(0:0x417):
Код

U = peek(0x40, 0x17); // или peek(0, 0x417)

PM MAIL   Вверх
Папараццы
Дата 5.11.2006, 22:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



Цитата(bsa @  5.11.2006,  15:51 Найти цитируемый пост)
Да, кстати, ты пути не забыл настроить в своем BC 3.1?

Неа не настраивал 3.1 просто записал .... 
 Ну PEEk у меня ваше не работоет : (
Скорее както надо настроить...


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
bsa
Дата 6.11.2006, 01:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



PEEK и не будет работать. С чего это вдруг она должна работать?!?
Если тебе нужен опрос кнопок, то используй getch() и kbhit() (что такое и как юзать читай в документации. В BC 3.1 просто подведи курсор к одной из этих функций и нажми Ctrl-F1).
PM   Вверх
Папараццы
Дата 6.11.2006, 20:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 475
Регистрация: 18.9.2006
Где: Баку

Репутация: нет
Всего: нет



Спасибо за совет 


--------------------
/*---------------------------------------------------------------------------------*/
PM MAIL WWW ICQ MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0813 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.