C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Назад в прошлое!!!, Забытый синтаксис СИ под ДОС.
Павел
Отправлено: 18.08.2003, 14:31


Не зарегистрирован







Очень давно была написана прога на СИ под DOS и благополучно забыта. Пытался подсунуть исходник в Borland C++ v3.1 ругается на описание массива in[16] , говорит пропущены {, на сколько старее надо искать СИ, и что описывается в последней строке данного фрагмента, если не затруднит, плз.


#include < stdio.h>
#include < conio.h>
#include < stdlib.h>

char in[16]=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16;

long int а=0x87654321;
char *r=(char*)&a;
...

Отредактировано Павел — 18/08/2003, 16:16
Gedeon
Отправлено: 18.08.2003, 14:55


Ветеран

Группа: Модератор
Сообщений: 1742




CODE

char in[16]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
Павел
Отправлено: 18.08.2003, 15:11


Не зарегистрирован







А для какой версии был тот синтаксис?
Гость_matt
Отправлено: 18.08.2003, 15:20


Не зарегистрирован







>>и что описывается в последней строке

А в последней строке создается указатель (резервируется область памяти размер которой достаточен для хранения адреса ячейки памяти и зависит от модели памяти, используемой в вашей программе (Small, Large, Flat и т.д.) ) на переменную типа char (обычно 1 байт, хотя это зависит от аппаратной части и компилятора) и инициализируется значением, получаемым приведением адреса переменной а к типу char.

Блин, вот это я по-моему, красиво загнул.... smile.gif
Павел
Отправлено: 18.08.2003, 15:35


Не зарегистрирован







Всё, разобрался, пихали через Аську всё "{}" пропали!!! Сенькс!!!

Вернуться в Вопросы программирования в C++Builder