[ manda021 @ 21.12.2008. 07:18 ] @
Baš sam se zagrejao za C++, ali me zeza od samog starta. Nabavio sam i štampane literature i skinuo kompajlere koje ste savetovali i opet mi pravi probleme. Svaki programčić koji prepišem i pokrenem kao rezultat ima ispis Hello World! Zašto? Da li nešto nisam podesio kako treba. Molim vas da mi pomognete. Nisam baš totalni početnik u programiranju ali jesam u C++. Hvala unapred.
[ X Files @ 21.12.2008. 07:24 ] @
Pokaži kod koji si uradio, drugačije je teško objasniti.

Inače, CodeBlocks po defaultu pravi ovakav početni kod:
Code:

#include <iostream>

using namespace std;

int main()
{
    cout << "Hello world!" << endl;
    return 0;
}


(liniju sa Hello World naravno treba ukloniti)
[ manda021 @ 21.12.2008. 08:06 ] @
Evo ga, program sa početka knjige:
Code:

#include<stdio.h>
void main()
{
int prvi,drugi,rezultat;
prvi=5;
drugi=3;
rezultat=prvi+drugi;
printf("Zbir%d+%d=%d\n",prvi,drugi,rezultat);
}

I još neki slični programi, ali znači svaki put kao rezultat samo Hello World!

[Ovu poruku je menjao X Files dana 21.12.2008. u 09:33 GMT+1]
[ X Files @ 21.12.2008. 08:33 ] @
Koje okruzenjenje/kompajler za razvoj koristis?


Za pocetak probaj: Build All, pa tek onda Run.

Ili, posto je program kratak, napravi Projekat od pocetka, u posebnom folderu gde ces drzati sve svoje zadatke. Zapisi korake kako si to uradio, od pravljenja projekta do nacina pokretanja pokretanja programa, da bismo (u slucaju da se problem ponovi) mogli da ustanovimo gde gresis.

Takodje, izbegavaj da folderi u svojoj putanji imaju oznake + kao i blankove, kao na primer C:\Moji C++ primeri.

Ovo se ranije moglo desiti ako se projektni fajl snimi na jednom mestu a izvorni fajlovi na drugom, sto moze pod odredjenim okolnostima da zbuni kompajler pa uvek uzima pogresnu verziju za kompajliranje.
[ manda021 @ 21.12.2008. 08:54 ] @
I ja sam pomislio na sličnu stvar. Folder u kome sam snimao naravno ima C++ u nazivu. Ispraviću to. Kompajler je onaj koji CodeBlock nudi po default-u, GNU GCC kompajler, vidim da tamo ima i gomila drugih ali nisam kombinovao jer ipak ne poznajem materiju. Hvala na savetu, probaću - pa se čujemo.
[ Eurora3D Team @ 21.12.2008. 22:03 ] @
CodeBlocks u workspace-u moze da ima vise projekata. Moguce je da ti je aktivni projekat neki HelloWorld program a ti pises kod u nekom drugom projektu i kad stisnes run on pokrene onaj koji je aktivan (HelloWorld) a ne taj koji si radio ... pogledaj to
[ manda021 @ 22.12.2008. 19:07 ] @
Nešto sam provalio ali mi i dalje nije baš najjasnije. Problemi su se naravno nastavili sa Hello world i u pauzi nerviranja oko Zdravo svete , otvorim ja slučajno fajl main i vidim da je tamo taj Hello world, izmenim poruku kad on to odradi, YEAH rekoh sebi, bar neki napredak. Ubacim u taj main fajl moj program a on radi ko sat, pa onda drugi, treći, sve ide.... Znači nije mi jasno, šta je taj main C++ source fajl koji CodeBlock automatski pravi u folderu koji sam odredio za čuvanje svojih programa, i zašto se uvek kad pokrećem kompajlirane programe u stvari pokreće taj main a ne ti programi? Sad mi ostaje da stalno otvaram taj main i da ga prepravljam, da li imate neku ideju? Glupo mi je da ne mogu da sačuvam programe pojedinačno.
Hvala na dosadašnjoj podršci.
[ X Files @ 22.12.2008. 19:29 ] @
Obavezno pronadji neku knjigu za C++.

main() jeste glavna funkcija i pocetna tacka izvrsavanja svakog C/C++ programa.

CodeBlocks generise tih par linija (skeleton) uopstenog koda, a ti svakako izbaci te suvisne linije i stavi ono sto tebi treba.

(U jednom postu gore sam upravo insistirao da pokazes korake kako pravis projekat i pokreces program, predosecajuci da nesto osnovno ne radis kako treba)
[ manda021 @ 22.12.2008. 19:40 ] @
Provalio sam, famozni trougao je pravio probleme, workspace-project-file, nešto je bilo pobrkano. Sada snimam sve kako pravim. Jeste da su ovo pitali već mnogi, ali da li je bolje učiti naredbe i način pisanja preko zadataka, dakle odmah vežbajući ili čitati literaturu pa polako? I ako neko ima neke zadatke, za početak naravno lakše, u elektronskom formatu, ako može da pošalje.
[ manda021 @ 22.12.2008. 19:46 ] @
Poslušao sam sve savete, i eto konačno sve radi kako treba. Hvala svima još jednom.
P.S. Cimaću ja vas još, ne brinite! Ali nemojte ni da se ljutite.
[ duskop @ 15.10.2009. 19:12 ] @
Pozzz...instalirao sam CodeBlock 8.02 i takodje imam problem sa ovim hello world.Kada otvorim create new project,izaberem c+ jer mi je trenutno taj potreban za fax,i napravim projetak....u main.c mi otvori ovaj program i kao rezultat dobijem hello world.I sad kad god izadjem iz programa i ponovo udjem opet mi bude samo ovaj program i ne mogu ni jedan drugi da programiram,kao rezultat uvek bude ovo hello world.Posle par pokusaja i malo cackanja po programu :D dobijem taj program u main.c i kad ga build and run,dobijem dole poruku "asd - Debug" uses an invalid compiler. Skipping...Nothing to be done.
i ne mogu ni to hello world vise kao rezultat da dobijem. (asd mi je naziv projekta) tnx i plz za brz odgovor :)))
[ idb @ 21.10.2009. 16:23 ] @
Da te ne bi zbunjivalo koji ti je od ucitanih projekata aktivan - zatvori sve projekte, pa onda otvori onaj sa kojim hoces da radis, ili napravi novi.

1. korak
Pravljenje novog projekta:
New->Project->Console application

odluci se za C ili C++

Odluci se za naziv projekta. Dok budes kucao u polje 'Project title' menjace se i sadrzaj polja 'Resulting filename'.
Projekt ce ti bit smesten u folder... (vidi sliku).


2. korak
Izaberi kompajler (bice ti ponudjen onaj koji si podesio za default - ali to mozes promeniti)
Da lices praviti i Debug i Release verziju odluci sam.


3. korak
Pritisni F9 (Build and Run) i videces rezultate.

Kako nastaju tvoji problemi (moja pretpostavka).
Pogledaj donju sliku:


Projekt_2 je ispisan BOLD, znaci on je aktivan - pa ako pokrenem F9 izvrsice se kompajliranje njegovog koda i startovati Projekt_2.EXE i dobices pozdravnu poruku "Hello world!"

main.cpp koji vidis u editoru je iz projekta 'Projekt_1' !!!!!!

Moj zakljucak: "Ako ne moras da drzis vise projekata u Workspace-u NEMOJ to raditi!"
EDIT: ocigledno nisam skoro prikacio slike uz porukeu - molim moderatora ako moze da ovo malo prepakuje.
Hvala unapred.

EDIT: X Files : Moze li ovako, bez thumbnails-a, slike su optimizovane i nisu velike?
BTW, hvala za ovu pomoc, mene je mrzelo da sve ovo oko Workspace-a objasnjavam... ;)




[Ovu poruku je menjao X Files dana 21.10.2009. u 18:42 GMT+1]
[ duskop @ 21.10.2009. 20:47 ] @
tnx za pomoc,ali nije od koristi :)))) nije problem u tome da su mi 2 projekta otvorena jer otvorim program i radim jedan projekat samo.Ali msm da je verzija takva da je u "main.cc jednostavno snimljen taj primercic" (program sam skinuo sa codeblocks.org) a to nije samo kod mene problem nego kod jos pojedinih kolega....Valjda ko uspe naci resenje za ovo :)
[ idb @ 21.10.2009. 21:40 ] @
X Files: Hvala na pomoci - bas tako sam mislio da postavim ali mi nije uspelo.

duskop: Citam ponovo tvoju poruku i nisam siguran da li si bar jedanput sa tom verzijom Codeblocks dobio EXE fajl?
Cas mi se cini da jesi - cas da nisi. Ako nisi onda je mozda problem u verziji koji si skinuo.

Pogledao sam u download sekciju, pa imam jedno prosto pitanje (zbod onog uses an invalid compiler)
Koju verziju si skinuo?
Code:
codeblocks-8.02-setup.exe       28 Feb 2008  10.8 MB  Sourceforge or BerliOS
codeblocks-8.02mingw-setup.exe  28 Feb 2008  19.3 MB  Sourceforge or BerliOS 

Ako si izabrao prvu - onda ti i nemas kompajler (pod uslovom da ga nisi odvojeno instalirao)!
?
Citat:
Ali msm da je verzija takva da je u "main.cc jednostavno snimljen taj primercic" (program sam skinuo sa codeblocks.org)

U pravu si, ovo jeste sablon koji se nalazi u 'C:\Program Files\CodeBlocks\share\CodeBlocks\templates' i koji se kopira u tvoj projekt kada ga otvoris.
Posle toga mozes sa njim raditi sta ti je volja.

Jos jedno pitanje "main.cc"?
Odakle ovo CC, greska u kucanju ili si ti menjao ekstenziju?
CodeBlocks za C++ programe daje ekstenciju CPP.
[ duskop @ 21.10.2009. 22:10 ] @
main.c je-sorry greska pri kucanju.A skinuo sam "codeblocks-8.02mingw-setup.exe 28 Feb 2008 19.3 MB" Sourceforge or BerliOS ,tj sa kompajlerom.Par puta mi se pojavljivalo kao da nekam kompajlera,ali sad mi radi taj program i ostale zadatke kad radim,program ih uradi bez problema.Znaci sad mi je samo prob. sa tim sto mi se pri svakom novom projektu pojavljuje to "hello world" i sto ga moram da brisem pa tek onda da radim druge zadatke.
[ idb @ 21.10.2009. 22:17 ] @
Da li sam dobro shvatio?
Moras da obrise red:
Code:
cout << "Hello world!" << endl;

Ili nesto drugo?
[ duskop @ 21.10.2009. 22:20 ] @
Hvala za pomoc,uspeo sam da resim i taj moj problem.Pa bar da napisem i drugima koji imaju isti problem da znaju u buduce :))
C:\Program Files\CodeBlocks\share\CodeBlocks\templates\wizard\console\c - otvorite main u wordped-u i samo izbrisete napisani program i snimite taj prazan file
posle kad pravite projekat dobicete prazan prostor i necete morati da prvo brisete Hello world pa tek onda da radite :D
[ idb @ 21.10.2009. 22:26 ] @
:)))) Ti ustvari nemas problem.

Svako razvojno okruzenje pravi slican sablon kao C::B, i tu je da pocetniku olaksa prve korake, a i zgodno je - pritisni F9, pa ako dobijes ono Hello world! znas da je sve i dalje dobro podeseno, pa poruku mozes i da obrises.

Ono sto si uradi je bas radikalno resenje - mislim i da je nepotrebno, no ako ti je tako lakse onda OK.

Pozdrav
[ duskop @ 21.10.2009. 22:38 ] @
:)))) sad ga nemam :D
Pa prvo me zzalo,izbacivalo da nemam kompajler.pa onda to popravim i onda me ubi ovo Hello world :D Al sad je dobro,ni to vise ne pise...jos sad samo da naucim prosecno da programiram i da polozim na faxu programiranje u c :D :D :D. Hvala za pomoc ;-)