| Автор |
Съобщение |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
 Въпрос относно GCC
Как се дефинира тип указател към функция? До сега съм ползвал такова:
typedef void (*funcptr)();
бачка с М$ компилатора, но с GCC не ще. 
|
| Чет Авг 30, 2007 9:18 pm |
|
 |
|
miro_atc
Ранг: Форумен бог
Регистриран на: Нед Фев 26, 2006 6:52 pm Мнения: 11266 Местоположение: Добрич
|
така изглежда по-добре:
typedef void (*funcptr)(void);
По принцип обаче GCC поддържа няколко стандарта (std99 и незнам кво си) и отделно имаш контрол върху какво да ти дава предупреждения/грешки...
И аз си мислех че знам С и не оставям warnings... докато не пуснах GCC и хоп хиляди забележки 
|
| Чет Авг 30, 2007 9:37 pm |
|
 |
|
шопов
Ранг: Минаващ
Регистриран на: Сря Май 17, 2006 4:22 pm Мнения: 34 Местоположение: софия
|
Хм, при мен работи и по двата начина ( typedef (foo*)(); и typedef (foo*)(void);), разлика всъщност няма. Какъв е проблемът с gcc?
|
| Чет Авг 30, 2007 9:43 pm |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
При мен на Code Warrior също работи и по двата начина  .
|
| Чет Авг 30, 2007 9:58 pm |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Самата конкретна декларация е
като това което плюе е:
обаче май не е от него, защото сега го сложих в отделен файл, който се компилира без проблем. Ще си загубя днеска 1 ден, то се е видело. 
|
| Пет Авг 31, 2007 9:22 am |
|
 |
|
ps66
Ранг: Форумен бог
Регистриран на: Пет Яну 19, 2007 9:16 am Мнения: 1063 Местоположение: путинофили: "иди н***й"
|
виж да не си пропуснал ; в някоя декларация на функция в предните h файлове
|
| Пет Авг 31, 2007 9:48 am |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Жив да си, имаш една бира от мене.  Никога не бих се сетил. Още повече, че проблемната декларация е изключена когато се компилира за Win симулатора и като решиш да билдваш target - изненада. 
|
| Пет Авг 31, 2007 10:28 am |
|
 |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
ааааааааа това си е стандартен проблем, да забравиш ; в предходния фаил и да ти даде грешка в следващия. Що псувни съм излял....
_________________ "Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.
|
| Пет Авг 31, 2007 10:36 am |
|
 |
|
woody
Ранг: Форумен бог
Регистриран на: Вто Юли 31, 2007 2:55 pm Мнения: 1792 Местоположение: София
|
Парсерът работи по зададена граматика и докато входящите token-и я удовлетворяват няма как да издаде съобщение за грешка. 
|
| Пет Авг 31, 2007 12:00 pm |
|
 |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
ахъ, ама 3 часа като утепаш, наеш как ми пука за граматиката на пасера 
_________________ "Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.
|
| Пет Авг 31, 2007 3:33 pm |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Абе не, че правя реклама, но ми се струва, че М$ компилера работи по-добре.  Случвало ми се до сега и обикновено се обажда ако не на същия ред, то поне в същия файл.
|
| Пет Авг 31, 2007 7:24 pm |
|
|