Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.01.2011, 22:42   #1
KOLANICH
Пользователь
 
Регистрация: 24.04.2010
Сообщений: 28
По умолчанию почему ошибки?

Код:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define STRSIZE 100;

typedef struct{
    char name[STRSIZE];//error: expected ‘]’ before ‘;’ token|
    char type[STRSIZE];//error: expected ‘;’ before ‘char’|
}variable;

typedef struct{
    char name[STRSIZE];
    variable* vars;
    int count;
}structType;

typedef struct{
    variable func;
    variable* args;

}funcProto;

variable* varPtrs[STRSIZE];
int varsCount=0;

void createVariable(variable* ptr,int pos,char* name,char* type){
    strncpy(ptr[pos].name,name,STRSIZE);
    strncpy(ptr[pos].type,type,STRSIZE);


}

Последний раз редактировалось KOLANICH; 29.01.2011 в 23:06.
KOLANICH вне форума Ответить с цитированием
Старый 29.01.2011, 22:50   #2
Obey-Kun
Линуксоид
Участник клуба
 
Аватар для Obey-Kun
 
Регистрация: 31.07.2009
Сообщений: 1,403
По умолчанию

Цитата:
#define STRSIZE 100;
Надо
Код:
#define STRSIZE 100
А вообще дефайны подобные дрянь. Ошибки, к которым они приводят, сложно отследить.
Лучше просто сделать так:
Код:
const size_t STRSIZE = 100;
Или, если следовать хорошему тону:
Код:
const size_t k_str_size = 100;
Или типа того.
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su
Obey-Kun вне форума Ответить с цитированием
Старый 29.01.2011, 23:01   #3
KOLANICH
Пользователь
 
Регистрация: 24.04.2010
Сообщений: 28
По умолчанию

если конст сайз т
Код:
|8|error: variably modified ‘name’ at file scope|
|9|error: variably modified ‘type’ at file scope|
|13|error: variably modified ‘name’ at file scope|
|24|error: variably modified ‘varPtrs’ at file scope|
||=== Build finished: 5 errors, 0 warnings ===|
если не конст сайз т, а через дефайн
то
всё норм

Последний раз редактировалось KOLANICH; 29.01.2011 в 23:06.
KOLANICH вне форума Ответить с цитированием
Старый 29.01.2011, 23:05   #4
Obey-Kun
Линуксоид
Участник клуба
 
Аватар для Obey-Kun
 
Регистрация: 31.07.2009
Сообщений: 1,403
По умолчанию

Цитата:
variable vars*
и что это?
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su
Obey-Kun вне форума Ответить с цитированием
Старый 29.01.2011, 23:07   #5
KOLANICH
Пользователь
 
Регистрация: 24.04.2010
Сообщений: 28
По умолчанию

я уже допёр
про вариэйбл варс
а про константу не допёр почему не пашед
KOLANICH вне форума Ответить с цитированием
Старый 29.01.2011, 23:15   #6
Obey-Kun
Линуксоид
Участник клуба
 
Аватар для Obey-Kun
 
Регистрация: 31.07.2009
Сообщений: 1,403
По умолчанию

Потому что компилятор не поддерживает стандарт полностью, видимо.
Я схожу с ума или это глючит реальность?
Jabber ID: obey@obey.su
Obey-Kun вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибки Arcueid1691 Паскаль, Turbo Pascal, PascalABC.NET 15 13.02.2011 15:05
почему у меня програма не работает? Где ошибки? vova_makarovych Общие вопросы C/C++ 4 22.09.2010 18:27
Немогу понять,почему Microsoft Visual Studio 2005 (C++) выдает ошибки? FanEurovision Visual C++ 3 18.05.2009 20:06
почему в MS Visual 2008 С++ возникают ошибки, хотя в С++ 6 таких проблем небыло atlon Visual C++ 22 03.03.2009 11:10