ďťż

Ładny brzuch

Witam,

ostatnio ucząc się programowania natknąłem sie na coś co nie daje mi spokoju :)

Mianowicie, czemu niektóre elementy wywołują errory przy komplikacjach na różnych IDE ?
Np. gdy komplikuje coś w Dev-C++ i pojawja się error to na C++ bulider wszystko jest ok ( odwrotnie )

Nie wiem, może tylko ja mam taki problem ale... nie daje mi to spokoju.

Czy jest jakiś porządny komplikator do wszystkiego ?! :/



Pewnie używasz jakichś bibliotek, np. tych dołączanych przez BCB, których to np. g++/MinGW (dev-c++) rzecz jasna nie posiada.
Ponadto BCB jest niezgodny ze standardami, więc może przepuszcza coś, czego kompilator zgodny (np. g++, które używasz), nie dopuszcza. Podaj może kod, będzie łatwiej to wyjaśnić.
Poza tym, jaki error? Zgadywać mam?
Oczywiście, że nie ma kompilatora do wszystkigo, co kolwiek miałeś na myśli pisząc to :|
Użytkownik Coldpeer edytował ten post 25 styczeń 2007, 18:10
Na przykład


Jak zmienić godzinę systemową?

#include <dos.h> (...) struct time t; t.ti_hund = 0; t.ti_sec = 0; t.ti_min = 12; t.ti_hour = 15; settime(&t);
Powinien zmienić godzinę ( tak wynika z "opisu" ) le przy komplikacji w Dev-C++ mam error:


C:\Documents and Settings\Gabi\Pulpit\progos\Makefile.win
[Build Error] No rule to make target `C:/Program', needed by `BezNazwy1.o'. Stop.


ten sam bład pojawja się także np. w kodzie:

#include <iostream> #include <string> #include <windows.h> int main() { std::cout << "Podaj tekst do wyświetlenia:" << std::endl; std::string str; std::cin >> str; // pobieramy uchwyt pulpitu jako uchwyt okna. HWND hDesk = GetDesktopWindow(); // pobieramy kontekst okna (pulpitu) HDC hDC = GetWindowDC( hDesk ); if( !hDC ) { std::cout << "BLAD!!" << std::endl; return 0; } // piszemy... x y if( !TextOut( hDC, 20, 20, str.c_str(), str.length() ) _ { std::cout << "BLAD!!" << std::endl; return 0; } // "puszczamy" kontekst ReleaseDC( hDC ); std::cout << "Brawo! Napisales: " << str << " !" << std::endl; return 0; }

który powinien wyświetlać napisy na pulpicie...
Użytkownik fenekpl edytował ten post 25 styczeń 2007, 18:20
Coś masz raczej z konfiguracją, niż z tymi bibliotekami... Zobacz na errory -> "C:/Program" <- w windzie tak się adresów nie podaje...

@Edas: no to zła konfiguracja, ale projektu, na jedno wychodzi... Bo jednak BezNazwy1.o to jest, o ilę się nie mylę, Linuksowy odpowiednik DLL-ki? :D

//W ogóle, co to jest "komplikacja"? :lol: :D

@Coldpeer, no proszę Cię, ja to wiem... Nie musisz specjalnie dla mnie spamować... Ostatnio już trochę przesadzasz... :>
Użytkownik pbnan edytował ten post 25 styczeń 2007, 19:01


raczej wynika on z tego że w jakiś zły sposób robisz projekt w devie
ale ja osobiście się zabardzo na makefile nie znam

Sprawa wydaje się jasna na podstawie komunikatu: kompilator szuka czegoś jak 'c:\program'. Nie ma takiej lokalizacji i stąd problem. Powinieneś umieszczeć projekty w ścieżce bez spacji (czyli na pulpicie), a program zainstalować w c:\dev. Wtedy nie będzie takich i innych dziwnych problemów. Z tego, co pamiętam, to któraś wersja dev miała domyślnie folder instalacyjny na c:, a któraś na c:\program files.
Rozwiązanie: odinstaluj devC++, zaisntaluj ponownie na dysku c, a na projekty teżzrób sobie folder w katalogu głównym dysku, np:
d:\projekty


Bo jednak BezNazwy1.o to jest, o ilę się nie mylę, Linuksowy odpowiednik DLL-ki? :D
*.o to plik wynikowy/wyjściowy - skrót od out - w Windowsie też istnieje kompilacja do pliku wyjściowego.


C:>type hello.cpp
#include <iostream>
int main()
{
std::cout << "Hello World";
}
C:>"c:\dev-cpp\bin\g++" hello.cpp -o hello.o
C:>hello.o
Hello World


@@up: pbnan:

@Coldpeer, no proszę Cię, ja to wiem... Nie musisz specjalnie dla mnie spamować... Ostatnio już trochę przesadzasz...
Ja nie postrzegam udzielania się w dyskusji i rozwiewania ew. nieścisłości jako spamowanie/nabijanie postów. Czasem może i off-top, ale i co z tego? Forum jest po to, żeby dyskutować, wyrażać własną opinię - gdyby wszyscy patrzyli "a ten nabija tyle", "ten tyle", byłoby naprawdę nudo. Licznik został ukryty - i dobrze.
Użytkownik Coldpeer edytował ten post 26 styczeń 2007, 17:45

W ogóle, co to jest "komplikacja"?

eee... to przez to że nie mam zbytnio czasu i się pomyliłem - tak mi sie nasuwa na myśl od razu...
Chodziło mi o Kompilator :)

Coldpeer pisał że BCB jest "niezgodny ze standardami"
Jakie więc kompilatory polecacie ?

g++ - najlepszy wzór do naśladowania (pod Windows jego odpowiednikiem jest MinGW, z którego korzysta Dev-C++), ew. Borland C++ Compiler.

Ja mam może nieduże doświadczenie, jednak lubię kompilatory Microsoftu (zwłaszcza Visual C++ Toolkit 2003).

Co do problemu, spróbuj przeinstalowac Dev'a, bo to napewno nie problem z kodem. :) Kompilatory MS'a są dość fajne, te najnowsze nawet (wydaje mi się) dość zgodne ze standardami. Kiedyś mialem Visual C++ 6.0 tam to sie dopiero cuda działy , trzeba było sie przyzwyczajać do owego "C++" ;-).
Moje ulubione kompilatory:
- Visual C++ 2005EE - w duzej mierze ze wzgledu na IDE
- g++ - to po prostu kawal dobrej roboty :)
- jest jeszcze takie coś jak tcc - w zasadzie to chyba kompilator C a nie C++ - nie wiem dokładnie jak to z nim jest ale podobno o wiele szybciej kompiluje kod od gcc no i produkuje mniejsze binarki :), warto sprawdzić
Użytkownik icek edytował ten post 26 styczeń 2007, 18:15
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •