mam taki problem oblicza on sume dwóch podanych przeze mnie liczb, lecz błąd wyskakuje mi przy pierwszej instrukcji cout:
#include
int Add (int x, int y)
{
cout << "jestem w funkcji Add(), argumenty " << x << " i "
<< y << “\n”;
return(x+y);
}
int main()
{
cout <<“jestem w funkcji main()!\n”;
int a, b, c;
cout << "podaj dwie liczby: ";
cin >> a;
cin >> b;
cout <<“wywołanie funkcji Add()!\n”;
c=Add(a, b);
cout << “z powrotem w main().\n”;
cout << "zmiennej c została nadana wartość " << c;
cout << “/nkoniec programu…\n\n”;
return 0;
}
flaszer
(flaszer)
25 Czerwiec 2009 15:16
#2
Źle używasz funkcji ‘cout’. Jest to funkcja z przestrzeni nazw std, także jej użycie będzie wyglądało następująco:
std::cout
Możesz także wcześniej zadeklarować sobie:
using namespace std;
Pozwoli Ci to uniknąć pisania za każdym razem ‘std::’.
dumdum
(Zenstr)
25 Czerwiec 2009 15:17
#3
Gdzie jest przestrzeń nazw std ?
flaszer
(flaszer)
25 Czerwiec 2009 15:19
#4
dumdum
(Zenstr)
25 Czerwiec 2009 15:23
#5
Ten link to dla mnie.
Jaja sobie ze mnie robisz . : -D
dumdum
(Zenstr)
25 Czerwiec 2009 15:44
#7
No i poco Tobie te cout-y na końcu skoro i tak nic nie zobaczysz.
Dodaj sobie za nimi chociaż:
system("pause");
nr47
(Sawyer47)
25 Czerwiec 2009 15:51
#8
Czemu niby? Chodzi Ci o zachowanie konsoli w Windows? Zawsze można najpierw uruchomić konsolę, a potem z niej program. Zakładając, że używa Windows/cmd.exe, bo tego nie napisał. Do tego odwoływanie się do systemu operacyjnego jest nieprzenośne.
Nie mówiąc już o tym, że cout to nie funkcja, a obiekt…
dumdum
(Zenstr)
25 Czerwiec 2009 16:07
#9
Zakładając,że uruchamia program z konsoli,owszem,ale nic o tym nie wspomniał.
flaszer
(flaszer)
26 Czerwiec 2009 15:27
#10
system(“PAUSE”) to drętwe rozwiązanie. Na linuksie kod by nie zadziałał…
dumdum
(Zenstr)
26 Czerwiec 2009 16:06
#11
cin.get() zadziała.
Niechaj sobie wstawia co mu się podoba.
Startuje z konsoli to niechaj nie wstawia w ogóle.
Najlepiej darować sobie strumienie do tego celu.
Takich informacji w internecie nie brakuje.
Pozdrawiam.
Dark_Smark
(Dark Smark)
27 Czerwiec 2009 17:48
#12
#include
#include
float suma (int a, int b) {
return a+b;
}
int main() {
int a, b;
printf("Podaj liczbe a: ");
scanf("%d", &a);
printf("Podaj liczbe b: ");
scanf("%d", &b);
printf("%d + %d = %f", a, b, suma(a, b));
_getch();
}
Prościej, wydajniej, dokładniej, plik wykonywalny dużo mniejszy.
matiit
(matiit)
27 Czerwiec 2009 19:23
#13
I nieprzenośnie, patrz conio.h.
Dark_Smark
(Dark Smark)
27 Czerwiec 2009 20:05
#14
Przecież kod jest łatwo przenośny, przy większych aplikacjach zawsze skorzysta się z interfejsu API systemu więc zawsze wiąże się to z ograniczeniami co do platformy.
Zawsze może usunąć nagłówek conio i w inny sposób zatrzymać konsolę. Ale jeżeli masz z tym problem to http://www.gerald-friedland.de/fractor/ … o-1.02.tgz
Airborn
(Airborn)
28 Czerwiec 2009 14:22
#15
damiaan9116 , proszę poprawić temat na konkretny mówiący o problemie. Proszę też obejmować dłuższe fragmenty kodu znacznikami
. Zignorowanie powyższych próśb spowoduje przesunięcie tematu do śmietnika.[/color]