C++/Przestrzenie nazw: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Lethern (dyskusja | edycje)
poprawki, wycięcie fragmentu o strumieniach
Lethern (dyskusja | edycje)
przywrócenie fragmentu, poprawki
Linia 169:
{...}
</source>
 
 
== Przestrzeń nazw <tt>std</tt> ==
Wróćmy ponownie do standardowej przestrzeni nazw, jaką jest <tt>std</tt>. Dzięki plikowi nagłówkowemu <tt>iostream</tt> możemy operować na standardowym wejściu i wyjściu. Zobaczmy jak wczytywać pewne wartości do zmiennych, używając do tego ''cin'':
 
<source lang="cpp">
#include <iostream>
 
int main ()
{
int a, b;
std::cout << "Podaj dwie liczby a i b" << std::endl;
 
// wypisujemy komunikat i czekamy na wpisanie liczby a
std::cout << "podaj a: ";
std::cin >> a;
 
// wypisujemy komunikat na wyjście i czekamy na wpisanie liczby b
std::cout << "podaj b: ";
std::cin >> b;
 
// wypisujemy sumę tych dwóch liczb
std::cout << "a+b= " << a+b << std::endl;
return 0;
}
</source>
 
Dzięki <tt>std::cin >></tt> możemy wczytać pewną wartość do zmiennej. Zmienna ta nie musi być liczbą, może być też np. napisem. W C++ tekst (łańcuch znaków) będziemy często przechowywali w obiektach typu <tt>string</tt> (który także znajduje się w <tt>std</tt>). Do jego obsługi będziemy musieli dołączyć do projektu bibliotekę <tt><string></tt>. Spójrzmy na przykład:
 
<source lang="cpp">
#include <iostream>
#include <string>
 
using std::cout;
using std::cin;
using std::endl;
 
int main ()
{
std::string imie;
std::string email;
std::string informacja;
 
// wczytujemy imię
cout << "Podaj swoje imie: ";
cin >> imie;
 
// wczytujemy email
cout << "Podaj swój email: ";
cin >> email;
 
informacja = imie + " (" + email + ")"; // suma (konkatenacja) napisów
cout << "Witaj " << informacja << endl;
 
informacja += " czyta ten napis";
cout << informacja << endl;
return 0;
}
</source>
 
Zauważmy, jak prosto się korzysta zmienną typu <tt>string</tt> (dla wtajemniczonych jest to pewna klasa). Jeśli chcemy dodać dwa napisy, wystarczy wykorzystać operator <tt>+</tt>. Możemy także wykorzystywać operator <tt>+=</tt>, jeśli chcemy dokleić do tekstu dodatkowy napis.
 
Podając swoje imię jako <tt>Zdzichu</tt>, a e-mail jako <tt>zdzichu@zdzichowo.mars</tt>, zobaczymy wynik:
 
Podaj swoje imie: {{Kolor|rgb(0,120,0)|Zdzichu}}
Podaj swój email: {{Kolor|rgb(0,120,0)|zdzichu@zdzichowo.mars}}
Witaj Zdzichu (zdzichu@zdzichowo.mars)
Zdzichu (zdzichu@zdzichowo.mars) czyta ten napis
 
Więcej o stringach można przeczytać w [[C++/String|dodatku]] opisującym bibliotekę STL.
 
 
=== Korzystanie z biblioteki standardowej C ===