Struktura w DEV c++

Odpowiedz Nowy wątek
2013-09-23 22:48
0

Mam taki problem otóż staram się nauczyć programować w c++ z pomocą DEV c++ bardziej przejrzyściej. W tym celu tworze projekt i tworze oddzielnie pliki. W pliku głównym main tylko używam include innych i wszystko jest ok. Ale mam pewien z problem z jedna struktura i programem. Nie przytoczę go całkowicie bo to dość duży kod. Ale w skrócie.
-Tworze pewna strukturę w pliku main,
-tworze tablice tej struktury pliku main,
-inicjuje funkcje pobierająca tablice i zwracającą ją inny plik projektu,
Sprawdziłem wszystko dokładnie lecz wywala mi błąd 'element' does not name a type
element to struktura. Jak by oddzielny plik nie widział struktury. Jak mógłbym rozwiązać ten problem? Co do samej funkcji jest ok. sprawdziłem ją gdy znajduje się bezpośrednio w pliku main. jest ok. próbowałem dodać sama strukturę do pliku z funkcja ale również nie działa. CO mam zrobić ? z góry thx za odpowiedz.

Pozostało 580 znaków

2013-09-23 23:09
0

Oczywiście że nie widzi bo musiałbyś zaincludować main aby widział, a wtedy cykliczny include.
Wiec wynieś deklaracje struktury do osobnego pliku .h który dołącz do głownego oraz do dodatkowego pliku.

P.S. Dev-C++ nie ma nic do rzeczy. Każdy kompilator (łącznie z tym używanym w Dev-C++) zareaguje na to tak samo.


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.
edytowany 1x, ostatnio: _13th_Dragon, 2013-09-23 23:11

Pozostało 580 znaków

2013-09-23 23:22
0

Racja. Taka oczywista rzecz a ciężko by było mi na nie tak porostu wpaść. Wielkie dzieki.
A i jeszcze jedno co ma zawierać plik.h ze struktura ? tylko struktura? bo wyskakuje mi po stworzeniu pliku ze struktura i dodaniu include do main komunikat " redefinition of 'struct element' ". I nadal nie wiem co robic.

edytowany 1x, ostatnio: vip268, 2013-09-23 23:36

Pozostało 580 znaków

2013-09-25 19:12
0

Pozwolę sobie jeszcze o jedno zapytać. Otóż mam sortowanie elementów tablicy zawierającej struktury. I sortuje ją za pomocą pierwszej Litery pliku struktury nazwa. Takie sortowanie pseudo alfabetyczne. Dopatrzy sie ktos może błędu w funkcji?

element *fun_sortowanie(element *tab,int *wsk_ilosc_danych)
{
    fstream dane;
    int i,j,nr;
    element min;
    for(i=0;i<*wsk_ilosc_danych;i++)
    {
        min=tab[i];
        for(j=i+1;j<*wsk_ilosc_danych;j++)
        {
            if(min.nazwa[0]>tab[j].nazwa[0])
            {
                min=tab[j];
                nr=j;
            }

        }   
            tab[nr]=tab[i];
            tab[i]=min;
    }
 return tab;

}
edytowany 2x, ostatnio: Rev, 2013-09-25 19:56
używaj tagów &lt;code&gt; do wstawiania kodu - Rev 2013-09-25 19:56

Pozostało 580 znaków

2013-09-25 20:53
0

@vip268 klasyka gatunku czyli przypadek brzegowy. Zobacz co sie stanie jeśli pierwsza pętla dojdzie do ostatniego elementu. Nie wejdziesz do drugiej pętli więc zmienna "nr" będzie miała wartość z poprzedniej pętli a ty cośtam zaczniesz przypisywać ;]


Masz problem? Pisz na forum, nie do mnie. Nie masz problemów? Kup komputer...

Pozostało 580 znaków

2013-09-25 23:17
0

wystarczy taka drobna poprawka: min=tab[nr=i];


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0