|
использование пойнтера в прерывании, нуждаюсь в помощи |
|
|
|
 |
Ответов
|
Sep 29 2010, 13:01
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 29-09-10
Пользователь №: 59 820

|
Цитата(MrYuran @ Sep 29 2010, 15:58)  static переменная? Это как? Я пока до таких высот не дошёл.
|
|
|
|
|
Sep 29 2010, 13:09
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 29-09-10
Пользователь №: 59 820

|
Или подскажите, что вообще можно сделать с пойнтером. Как положить его значение в int и как произвольный int сделать пойнтером. Как-то в ассемблере с этим было попроще.
|
|
|
|
|
Sep 29 2010, 13:20
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 29-09-10
Пользователь №: 59 820

|
что не получается: Пойнтер *P объявлен глобально, но создаётся впечатление, что при выходе из подпрограмма void Prog(char *P) он разрушается, т.к. из другой подпрограммы (в данном случае из обработчика прерывания) он не виден. Чисто теоретически это выглядит так: все операции с *P, типа *(P+i), P[i] внутри процедуры транслируются в команды косвенной адресации без сохранения значения пойнтера в каком-либо регистре. И я никак не могу сохранить или получить адрес String в глобальную переменную типа int, которую внутри прерывания можно было бы (если вообще можно?) использовать как пойнтер.
Имеется ввиду, можно ли сделать что-то типа int k; chap *P; k=P; .... char i=*k
Сообщение отредактировал 1921 - Sep 29 2010, 13:25
|
|
|
|
Сообщений в этой теме
1921 использование пойнтера в прерывании Sep 29 2010, 12:56  MrYuran Цитата(1921 @ Sep 29 2010, 17:01) Это как... Sep 29 2010, 13:08   MrYuran Цитата(1921 @ Sep 29 2010, 17:09) Или под... Sep 29 2010, 13:18    MrYuran Цитата(1921 @ Sep 29 2010, 17:20) Чисто т... Sep 29 2010, 13:25    MrYuran Цитата(1921 @ Sep 29 2010, 17:20) Имеется... Sep 29 2010, 13:30     1921 Можно, конечно, вывернуться через ж.. и написать k... Sep 29 2010, 13:39      MrYuran Цитата(1921 @ Sep 29 2010, 17:39) k=P иде... Sep 29 2010, 13:56       Hoksmur Попробуйте задействовать модификатор volatile- дол... Oct 26 2010, 07:58   1921 Я просто по пикам помню, там пойнтеры лежали в опр... Sep 29 2010, 13:28 rezident Я видимо как-то слабо улавливаю проблему, но если ... Sep 29 2010, 13:53 ih_ Цитата...Неужели нет никакой возможности получить ... Oct 26 2010, 13:10 Hoksmur Цитата(ih_ @ Oct 26 2010, 21:10) поинтер ... Oct 27 2010, 02:37 Сергей Борщ Цитата(Hoksmur @ Oct 27 2010, 05:37) Я хо... Oct 27 2010, 08:22
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|