• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

c++ jaka jest roznica miedzy printf a cout ?

Object Storage Arubacloud
–1 głos
1,404 wizyt
pytanie zadane 23 kwietnia 2017 w C i C++ przez Szaradek Obywatel (1,340 p.)
oczywiscie tak jak w temacie . Mam ksiazke C++. PRZEWODNIK DLA POCZĄTKUJĄCYCH w ktorej uzywa sie cout  lecz uczac sie z strony http://cpp0x.pl/kursy/Kurs-C++/Poziom-1/Podstawy-programowania-w-C++/7 uzywa sie printf ? Powie mi ktos jaka jest roznica i na poczatek co polecacie stosowac >?
2
komentarz 23 kwietnia 2017 przez SebekChlebek Stary wyjadacz (11,290 p.)
komentarz 23 kwietnia 2017 przez jpacanowski VIP (101,940 p.)
Zacznijmy od tego, że printf() to język C, a cout to język C++.
komentarz 23 kwietnia 2017 przez sko Użytkownik (500 p.)
Pan Jerzy Grębosz w swojej Symfonii C++, którą polecam na początek drogi z C++, fajnie wyjaśnia różnicę pomiędzy cout,  a printf. Opisuje też tam dlaczego należy się, w miarę możliwości wystrzegać się printf :).
komentarz 24 kwietnia 2017 przez zhazin Użytkownik (800 p.)
COUT'y są dużo wolniejsze. W praktyce lepiej używać się printf'a.

3 odpowiedzi

+2 głosów
odpowiedź 23 kwietnia 2017 przez Wiciorny Ekspert (269,810 p.)
wybrane 23 kwietnia 2017 przez Szaradek
 
Najlepsza
polecam stosować COUT

Ogólnie poczytaj o o tym jako o strumieniu wejść/wyjść cin/cout... zdecydowanie lepsza praktyka niż używanie funkcji printf, którą co jak co ale należy bardziej do języka C, niż C++.  

Cout jest bardziej praktyczny, nie musisz np. określać formatu zmiennej jaką chcesz wypisać- z drugiej strony, jeśli zależało by ci na tym, to własnie wystarczy dodać " ten format", ale z góry nie jest on wymagany.

Sprawdz sobie opis standardu z języka C- i funkcji PRINTF- widać, że programiśćie wtedy łatwiej coś wypisać jak zna rozszerzenia np zmiennych %s / %d itd... gdzie czasem - jest to uciążliwe, jak wiadomo zapominalscy wszyscy jesteśmy :D
+1 głos
odpowiedź 23 kwietnia 2017 przez Damian11131 Stary wyjadacz (13,490 p.)
0 głosów
odpowiedź 23 kwietnia 2017 przez Gankkah Użytkownik (720 p.)
edycja 24 kwietnia 2017 przez Gankkah
'printf' jest funkcją biblioteczną z biblioteki <stdio.h>, a <stdio.h> jest z języka programowania "C".

'cout' jest obiektem klasy 'ostream' z biblioteki <iostream>, a <iostream> jest z języka programowania "C++" który ma więcej możliwości.

 

Więc raczej wolę 'cout'. Ale ty używaj co chcesz.

 

Edit:

Źle podałem nazwę biblioteki mającej funkcję 'printf'
komentarz 23 kwietnia 2017 przez jpacanowski VIP (101,940 p.)

Kto jak co woli... Ja mam dzięki printf() większą kontrolę...

printf("W systemie szesnastkowym to będzie: %X, number);

albo:

printf("%.6f", myFloat);

:)

1
komentarz 23 kwietnia 2017 przez j23 Mędrzec (194,920 p.)

@jpacanowski, z tą większą kontrolą nie przesadzałbym:

cout << "W systemie szesnastkowym to będzie: " << hex <<  number << '\n';
	
cout << setprecision(6) << myFloat << '\n';

 

komentarz 23 kwietnia 2017 przez jpacanowski VIP (101,940 p.)

Wiem, że tak się robi w C++ ale wygląda jak paskudztwo ;)

Zwł. to:

<< '\n';

czy to:

<< hex <<  number

W języku C formatowanie jest ładniejsze i bardziej zwięzłe ;)

komentarz 23 kwietnia 2017 przez mokrowski Mędrzec (155,460 p.)
edycja 24 kwietnia 2017 przez mokrowski
@Gankkah błąd. To nagłówek <stdio.h> lub dla C++ <cstdio>
komentarz 23 kwietnia 2017 przez j23 Mędrzec (194,920 p.)

ale wygląda jak paskudztwo ;)

Pisałeś o kontroli, a nie wyglądzie. W C++ mimo wszystko lepiej używać strumieni cin/cout.

komentarz 24 kwietnia 2017 przez Gankkah Użytkownik (720 p.)
Dzięki za zgłoszenie mi błędu w odpowiedzi.

@mokrowski

 

P.S Jeszcze raz przeczytaj mój nick. :)

Podobne pytania

0 głosów
2 odpowiedzi 537 wizyt
pytanie zadane 21 października 2017 w C i C++ przez Daro235 Początkujący (360 p.)
0 głosów
1 odpowiedź 336 wizyt
pytanie zadane 29 listopada 2018 w C i C++ przez ciocialol Nowicjusz (180 p.)
0 głosów
1 odpowiedź 607 wizyt
pytanie zadane 21 sierpnia 2017 w C i C++ przez Jakub 0 Pasjonat (23,120 p.)

92,568 zapytań

141,424 odpowiedzi

319,634 komentarzy

61,956 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...