Struktury w C++

Jan 15, 2011 4 Replies

Witam.



Nie mogê wyczaiæ o co tu chodzi:



struct partition = partition_open (sd_raw_read, sd_raw_read_interval, sd_raw_write, sd_raw_write_interval, 0);



Za ka¿dym razem kompilator wywala b³±d main.c:104: error: expected identifier or '(' before '=' token



A mo¿e to chodzi o to ¿e to pochodzi z pliku main.c dla którego w Makefile jest c99 a ja mam a Makefile gnu99? Inna sk³adnia czy co?



Marek


4CX250 snipped-for-privacy@poczta.onet.pl> napisa³(a):

A partition_open nie zwraca wska¼nika?

struct partition nazwa_zmiennej = lub struct partition *nazwa zmiennej =

w zależności co potrzebne.

W dniu 15.01.2011 01:05, 4CX250 pisze:

to jest C (ewentualnie "C z klasami") a nie C++ ;)

struct mówi kompilatorowi C, że następujący po nim identyfikator typu będzie odnosił się do zdefiniowanej struktury.

deklaracja w C wygląda tak: id_typu nazwa [=inicjalizacja]; ty masz tylko id_typu i do tego błędny:

struct partition_struct *partition = partition_open

Inna niż używasz - właściwa dla C.

W rozwi±zaniu problemu pomóg³ mi na privie jeszcze jak w nocy nad tym siedzia³em Grzegorz Niemirowski za co mu serdecznie dziêkujê. Micho to powtórzy³ i wszystko gra.

Teraz wygl±da to tak: struct partition_struct* partition = partition_open(...

Wielkie dziêki wszystkim za pomoc. Marek

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required