Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: c/c++
Forum PHP.pl > Inne > Hydepark
invx
uczylem sie c++ z ksiazki "jezyki C i C++ twuj pierwszy program"
no i wreszcie nadszedl czas zebym se cos skompilowal...
wziolem kompilator Bloodshed Dev C++ pisze jak mnie w ksiazce uczyli:
main()
{
puts("blablabla");
}

i z return tez prubowalem na koncu
i NIE KOPMILUJE pisze ze jakas finkcja nie zdefiniowana!!!!
znacie DOBRY kompilator ktury mi cos tak prostego skompiluje (najlepiej PL)
Zepco
Nie zapomniałeś czasem o #include?
FiDO
Cos slaba ta ksiazka, jesli to faktycznie jest z niej przyklad, bo kod jest conajmniej niepoprawny..

C:
Kod
#include <stdio.h>



int main()

{

  printf("Hello world!n");

  return 0;

}


C++:
Kod
#include <iostream>

using namespace std;



int main()

{

  cout << "Hello world!n";

  return 0;

}


Sprobuj ktorys z tych skompilowac. Kompilator masz akurat dobry, wiec nie szukaj bledu w nim.
Zepco
Cytat
Kod
using namespace std;


Dawno nie zajmowałem się C/C++ i nie bardzo wiem do czego to służy, możesz wyjaśnić?
invx
to ca ja [cenzura] kupilem wydalem 28,90 i wrrrrr i pisze tam czarno na bialym jak napisalem.....
invx
zreszta dalej cos do [cenzura] terez przy kompilacji nie ma bledow ale uruchamiam skompilowany *.exe i zamiast mi wyswietlic na konsol text to cos jak gdyby wyskakuje okno dosa i w ciagu kilku milisekund zamyka ...
Seth
Przeczytaj regulamin forum. Nie bede cenzurowal kolejnych twoich slow tylko dam bana.
spenalzo
Nie wiem jak w C, ale w pascalu było coś takiego, ze trzeba było zatrzymać działanie programu do nacisnięcia jakiegokolwiek klawisza poprzez readln;
invx
Seth cos taki nie wyrozumialy tongue.gif
bys wydal 29 za ksiazke z kturej pozytku nie ma a wrecz przeciwnie straty (cza jak hyba jakos zutylizowac) to bys zrozumial czlowieka :wink:
P.S.
Juz mi przeszlo troszeczke smile.gif

-----------------------------

ejj a moye ynacie dobre polskie forum o c i c++
kossa
Cytat
Cos slaba ta ksiazka, jesli to faktycznie jest z niej przyklad, bo kod jest conajmniej niepoprawny..

C:
Kod
#include <stdio.h>



int main()

{

  printf("Hello world!n");

  return 0;

}


C++:
Kod
#include <iostream>

using namespace std;



int main()

{

  cout << "Hello world!n";

  return 0;

}


tu jest blad smile.gif funkcja w c i c++ zwraca void i powinno byc void main (void) w C a w c++ void main() itd.  

Sprobuj ktorys z tych skompilowac. Kompilator masz akurat dobry, wiec nie szukaj bledu w nim.
Zepco
Akurat z int nie ma błędu, bo funkcja main może zwracać liczbę choćby do systemu, który później coś z tym zrobi...

A żeby zatrzymać na chwilę działanie programu musi być tak

Kod
int main()

{

    cout << "Hello world!n";

    system("PAUSE");

    return 0;

}


Przynajmniej w DEV-C++
Seth
main() zwraca 0 jezeli nie ma bledu lub inny numer w przeciwnym razie, wiec nie void, a int tak jak podal FiDO.
goped
hmm, a ja se kupilem ksiazke:
"klasyka informatyki

Brian W. Kernighan
Dennis M. Ritchie
----------------------
Jezyk ANSI C"

bardzo polecam. moze droga ale bardzo dobra. uzywam kompilatora "lccwin32" i musze powiedziec ze jest rowniez bardzo dobry.
pierwszy przyklad w ksiazeczce to znane kazdemu:

Kod
#include <stdio.h>



main()

{

printf("ahoj, przygodon");

}

znany pierwszy program i chyba wzedzie jest jako pierwszy smile.gif
a to ze ci sie zalancza i znika to normalka, w lccwin32 zrobili tak, ze zawsze kiedy plik ma sie wylaczyc on konczy dzialanie skryptu, ale nie wylancza okna. podobny skutek mozesz osiagnac tworzac plik:

powiedzmy ze twoja aplikacja nazywa sie "program1.exe"
tworzysz wtedy notatnik w ktorym piszesz:
Kod
command k program1.exe

i teraz musisz zapisac z koncowka lub ja poprostu zmienic na bat i wtedy wykona skrypt, zakonczy go ale okna nie wylaczy. jest jeszcze drugi sposob:
start=>uruchom=>cmd=>wpisujesz sciezki az dojdziesz do swojej aplikacji, wpisujesz nazwe i uruchamiasz.
reViVer
A ja mam "C++ dla każdego" z Helionu autororstwa Jesse Liberty i bardzo jestem zadowolony:-))
Doskonale tłumaczy podstawy element po elemencie
POLECAM 8)
Seth
Ja skolei polecam inna ksiazke. Cena jest dosc wysoka ok 100zl (kupowalem ja jakis rok temu) ale jest swietnie napisana.
"C++ Programowanie" Arkana - Harvey i Paul Deitel (1082 strony).
Naprawde bardzo polecam.
kossa
zwraca void winksmiley.jpg mialem wczoraj egzamin z c, c++ i javy smile.gif i tak mnie uczono, a ze return 0; tzn. ze program wykonal sie prawidlowo

Kossa
Seth
Cos chyba zle tam ucza winksmiley.jpg
http://wwwx.cs.unc.edu/~sparkst/howto/cpp_main.php
kossa
w 3 ksiazkach tez mialem z void, to ja juz nic nie wiem... wole i tak delphi smile.gif

Kossa
Zepco
A ja z kolei polecam "Symfonia C++" Jerzego Grębosza. Dzięki niej bez problemu przeniosłem się na php, który składnią jest bardzo podobny.
goped
ja mam 360 stron ale tez jest swietna, tlumacza wszystko, a z tylu dali wszystkie funkcje, komendy i biblioteki dla ansi c, ale niestety kosztuje kolo 150zl sad.gif
Cudi
Ja również kształciłem sie na książce C++ dla każdego, prawe mówiąc z braku czasu opanowałem ją dopiero do 12 rozdziału. Ale będzie jeszcze czas by to nadrobić. Natomiast w C++ najprostszy program pod konsole powinien wyglądać mniej więcej tak (tak żeby okienko nie "znikało" winksmiley.jpg ):
Kod
#include <iostream>

#include <stdlib.h>



using namespace std;



int main(int argc, char *argv[])

{

  cout << "Hello world" << endl;

  system("PAUSE");    

  return 0;

}

Do funkcji main dostajemy jeszcze argumenty z jakimi uruchomiono program w tablicy argv, oraz ich ilosc w zmiennej argc. Oczywiście jeśli nie są nam one potrzebne możemy je najprościej w świecie usunąć winksmiley.jpg
Jabol
osobiście też polecam "Język C" (K&R). Mam tą książkę i jest naprawdę dobra. Chociaż na dłuższą metę ciutkę za mało.
invx
Cytat
Kod
#include <stdio.h>



main()

{

printf("ahoj, przygodon");

}


no wlasnie j tez mam w niej taki przyklad na poczatku to czego mi wlasnie takiego prostego nie kompiluje?questionmark.gif tam nie pisze o zadnej
int main() tylko main()
Jabol
Cytat
Cytat

Kod
#include <stdio.h>



main()

{

printf("ahoj, przygodon");

}


no wlasnie j tez mam w niej taki przyklad na poczatku to czego mi wlasnie takiego prostego nie kompiluje?questionmark.gif tam nie pisze o zadnej
int main() tylko main()
to wyrzuć tą książkę winksmiley.jpg. A tak na serio można skompilować to tak, ponieważ domyślnym typem funkcji jest właśnie int. Natomiast void main też jest akceptowalne, ale np. mój gcc wywala warning (ale kompiluje i tak).
A jak już chcesz miec naprawdę porządny przykład takiej funkcji to proszę:
Kod
#include<stdio.h>



int main(void)

{

    printf("ahoj przygodon");

    return 0;

}
jeżeli tego nie skompiluje to wyrzuć ten kompilator albo conajmniej pokarz błędy.
invx
nigdy w cudy nie wierzylem a stalo sie smile.gif) skompilowalo smile.gif))
invx
ale programu nie zatrzymuje to :system("PAUSE"); programu nie zatrzymuje sad.gif(((
Jabol
Kod
#include<stdio.h>



int main(void)

{

    printf("ahoj przygodon");

    while(getchar()!='n');

    // getchar(); ta opcja akceptuje wszystkie inputy

    return 0;

}
michaloo
hmm nie lepiej tak?:
Kod
#include<stdio.h>



void main(void)

{

    puts("ahoj przygodo");

    getch();

}
Jabol
nie, bo ->
1 wg. specyfikacji c metoda main to metoda typu int i musi taki też wynik zwracać
2 puts("XXX") == printf("XXXn") więc nie ma różnicy. puts może jest troszkę szybsze, ale printf bardziej poręczne i uniwersalne
matys
Ja ucze się z C++ dla każdego. Co prawda troche się wypłaciłem ale naprawde warto. DAm tu moze swoj skromny programik ktory ostatnio zacząłem pisać biggrin.gif :

#include <iostream>
#include <stdlib.h>

using namespace std;

main()
{
int a,b;
cout << "Podaj a"<< "n";
cin >>a;
cout << "Podaj b"<< endl;
cin >>b;
do
{
if(a>b)
a=a-b;
else
if(a!=cool.gif
{
b=b-a;
}

}while(a!=cool.gif;
cout <<"NWD = " << a<< "n";


system("PAUSE");
return 0;
}


To prosty program dobrze przedstawiający Algorytm Euklidesa, znajdujący największy wspolny dzielnik
matys
Jednak podczas nauki ze wspaniałej książki C++ dla każdego były tam jedynie porady jak pisać proste aplikacje o wyglądzie dosowym. Nigdzie w necie nie znalazłem jeszce poradnika jak ulepszyć wizualny wygląd napisanego przez siebie programu. zna moze ktos tki poradnik??
matys
Co do problemu invx'a natomiast iż skompilowany program zaraz znika wpisz pod treścią programu
int x;
cin >> x;
np:
#include <iostream>
#include <stdlib.h>

using namespace std;

main()
{
int a,b;
cout << "Podaj a"<< "n";
cin >>a;
cout << "Podaj b"<< endl;
cin >>b;

int x;
cin >> x;


system("PAUSE");
return 0;
}
I teraz okno powinno ci zostac na tyle na ile chcesz biggrin.gif
michaloo
Cytat
nie, bo ->
1 wg. specyfikacji c metoda main to metoda typu int i musi taki też wynik zwracać
2 puts("XXX") == printf("XXXn") więc nie ma różnicy. puts może jest troszkę szybsze, ale printf bardziej poręczne i uniwersalne

1. jednak skoro ten kod ktory przedstawilem dziala to czy jest jakas roznica pomiedzy przypadkami gdy main zwraca jakas wartosc lub tego nie robi? Bo jak mowisz tak jest w specyfikacji wiec musi to miec jakies konkretne przyczyny.
2. wlasnie o to mi chodzilo, ze puts w tym przypadku jest lepsze smile.gif
matys
Ja np osobiści nie używam puts ani printF, jeśli mowa tu o C++. Cout jest zdecydowanie lepsza komenda i szanujocy sie programisci ograniuczaja sie do uzycie tegoz slowa kluczowego.......
Tyle mojego::::::Pozdrowienia for all biggrin.gif
invx
jakiego uzywacie kmpilatora?questionmark.gif zna ktos kompilator zeby byl PL
Jabol
ja używam gcc aaevil.gif , i chyba raczej nie ma on wersji pl.
FiDO
Nie sadze, aby kompilatory mialy rozne wersje jezykowe, bo niby po co?questionmark.gif
Co najwyzej manual do niektorych moze jest przetlumaczony, choc i tak watpie. Pozatym jak nie znasz angielskiego to sie nie bierz za programowanie, najpierw wez sie za jezyk, nie musisz nim przeciez biegle wladac, starczy bierna znajomosc.
Zepco
Cytat
jakiego uzywacie kmpilatora?questionmark.gif zna ktos kompilator zeby byl PL


Nie wiem jak manual, ale menu w Dev-C++ jest spolszczone.
invx
ja mam tego Dev C++ i nie ma lskiego monu sad.gif skad mozna scianac polska wersje alo spolszczenie??
matys
Ja mam dev-C++ 4.7.90 i jest polska wersja. wystarczy w googlach poszukać, napewno znajdziesz biggrin.gif Choć dla bardziej zaawansowanych nie polecałbym tego programu. Lepiej zainstalować cały pakiet Visual Studio 4.0 a tam znajdziesz aplikacje "Visual C++" biggrin.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.