Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

Linux

Насчет typedef int FILE; извиняюсь
Вот FILE-определение в <stdio.h>:

struct _iobuf {
char *_ptr;
int _cnt;
char *_base;
int _flag;
int _file;
int _charbuf;
int _bufsiz;
char *_tmpfname;
};
typedef struct _iobuf FILE;
Поэтому окончательно имеем:
#include <stdlib.h>
#include <stdio.h>

struct clistruct
{
typedef int FILE;
int clifd;
FILE * fp;
struct clistruct * next;
struct clistruct * pr;
}*head,*tail,*tmp,*dd;

tmp = (clistruct*) malloc(sizeof(clistruct));
free((void*)tmp);
Насколько я помню документацию, gcc определяет язык по умолчанию
на основе расширения файла с исходным текстом, кроме того, есть
опция командной строки, позволяющая явно указать язык.
В общем, смотри "man gcc" для установленной версии.
Если хочешь писать на чистом C - придется
использовать malloc() и free().

А насчет изменения исходников, предложенных "Vlad Sviridov"
- компилироваться конечно будет, но возможны проблемы.
Ведь наверняка под типом FILE понимается состояние для
функций работы с потоками (fopen и т.п.), определенное
в "stdio.h", так что макросы вроде getc перестанут
работать. Еще раз повторюсь, в этом случае
самое превильное - #include <stdio.h>

-*Информационный канал Subscribe.Ru
Написать в лист: mailto:comp.soft.prog.prog-list@subscribe.ru
Отписаться: http://subscribe.ru/member/unsub?grp=comp.soft.prog.prog&email=
http://subscribe.ru/ mailto:ask@subscribe.ru

Ответить   "Vlad Sviridov" Thu, 18 Dec 2003 16:30:47 +0300 (#37587)