Strona 1 z 1
[C++/Code::Blocks] jak tu kompilować?
: 05 wrz 2011, 18:46
autor: lukasz2146
Witam!
Na windowsie korzystałem z Dev c++ i wciskało się jeden przycisk i wszystko ładnie się kompilowało. Teraz korzystam z Code::Blocks i próbuję sobie skompilować taki oto prosty program:
Kod: Zaznacz cały
#include <iostream>
using namespace std;
int main()
{
for (int i=0; i>100; i++)
{
cout<<"Wypisuje element"<<i;
}
}
I nic nie pojawia się tylko Process returned 0 (0x0) execution time : 0.003 s Press ENTER to continue. Ale gdy np. napisze sobie tylko "Hello world" to wyświetla się.
Re: [C++/Code::Blocks] jak tu kompilować?
: 05 wrz 2011, 20:24
autor: Struchu
Sterowanie nigdy nie wchodzi do wnętrza pętli (warunek i > 100 nie jest spełniony już na starcie, bo i == 0).
Re: [C++/Code::Blocks] jak tu kompilować?
: 06 wrz 2011, 10:36
autor: Ubek308
for (int i=0; i>100; i++)
Struchu. Nie jestem programista ale powyzsze tlumaczy sie chyba:
"zaczynajac od 'i' rownego zero zwiekszaj 'i' dopoki nie bedzie wieksze niz 100"
Re: [C++/Code::Blocks] jak tu kompilować?
: 06 wrz 2011, 12:48
autor: civi
tak tylko że powinno być
i<100
czyli całe
Re: [C++/Code::Blocks] jak tu kompilować?
: 06 wrz 2011, 14:59
autor: Ubek308
> "tak tylko że powinno być i<0"
Racja, choc tez zgubiles "10".
To ponizsze dziala choc nie wiem jaki znak daje 'newline':
#include <iostream>
using namespace std;
int main()
{
for (int i=0; i<100; i++)
{
cout<<i;
}
}
Re: [C++/Code::Blocks] jak tu kompilować?
: 06 wrz 2011, 15:01
autor: norvoles
Struchu. Nie jestem programista ale powyzsze tlumaczy sie chyba:
"zaczynajac od 'i' rownego zero zwiekszaj 'i' dopoki nie bedzie wieksze niz 100"
Nie, każda pętla wykonuje się dopóki, dopóty warunek jest spełniony. Nie bardzo ma to sens inaczej.
To ponizsze dziala choc nie wiem jaki znak daje 'newline':
Kod: Zaznacz cały
#include <iostream>
using namespace std;
int main()
{
for (int i=0; i<100; i++)
{
cout<<i;
}
}
Nową linię można uzyskać na dwa sposoby, za pomocą "\n" lub std::endl z tym, ze różnią się nieco działaniem, ale widoczny efekt jest ten sam.