C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

printf Vs cout

 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French)
View previous topic :: View next topic  
Author Message
Gaël Jaffré
Guest





PostPosted: Mon May 24, 2004 3:16 pm    Post subject: printf Vs cout Reply with quote



Bonjour,

Quel problème peut-il y avoir si en passant de C à C++ on continue à
utiliser :
- printf("..."); au lieu de cout << "...";
- #define N 64 au lieu de const int n = 64;
- int f(void) au lieu de int f()

Habitué à programmer en C, je pensais qu'en C++ je pouvais continuer à
utiliser tout ça sans aucun problème. Mais j'ai eu plusieurs fois la
remarque "ça ressemble à du C".
Cette utilisation d'instructions et de fonctions typiques du C peut
t-elle poser des probèmes ?


Merci
Back to top
Jean-Marc Bourguet
Guest





PostPosted: Mon May 24, 2004 3:23 pm    Post subject: Re: printf Vs cout Reply with quote



Gaël Jaffré <jaffre (AT) irit (DOT) fr> writes:

Quote:
Bonjour,

Quel problème peut-il y avoir si en passant de C à C++ on continue à
utiliser :
- printf("..."); au lieu de cout << "...";

Tout les problemes habituels de printf. En particulier pas de
verification la correspondance de type entre ce qui est attendu et ce
qui est reellement passe et pas de possibilite d'utiliser des classes.

Quote:
- #define N 64 au lieu de const int n = 64;

Les problemes du preprocesseur. En particulier pas de controle de
scope, clash possibles avec d'autres symboles avec des effets plus ou
moins bizarres et facile a debugger et symbole generalement inconnu du
debugger.

Quote:
- int f(void) au lieu de int f()

Uniquement un probleme de style.

Quote:
Habitué à programmer en C, je pensais qu'en C++ je pouvais continuer
à utiliser tout ça sans aucun problème. Mais j'ai eu plusieurs fois
la remarque "ça ressemble à du C".

Le dernier points n'est qu'un probleme de style, les autres ont aussi
des implications plus graves.

A+

--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org

Back to top
Samuel Krempp
Guest





PostPosted: Mon May 24, 2004 7:06 pm    Post subject: Re: printf Vs cout Reply with quote



le Monday 24 May 2004 17:23, [email]jm (AT) bourguet (DOT) org[/email] écrivit :

Quote:
Gaël Jaffré <jaffre (AT) irit (DOT) fr> writes:

Bonjour,

Quel problème peut-il y avoir si en passant de C à C++ on continue à
utiliser :

les points que tu cites sont effectivement des exemples classiques où la
façon de faire du C a des réels inconvénients.
à priori on peut trouver des détails dans des comparaisons C/C++ .

en regardant dans la 'faq-lite' de C++, on trouve aussi des réponses :

Quote:
- printf("..."); au lieu de cout << "...";

Tout les problemes habituels de printf. En particulier pas de
verification la correspondance de type entre ce qui est attendu et ce
qui est reellement passe et pas de possibilite d'utiliser des classes.

voir aussi
http://www.parashift.com/c++-faq-lite/input-output.html#faq-15.1

Quote:
- #define N 64 au lieu de const int n = 64;

Les problemes du preprocesseur. En particulier pas de controle de
scope, clash possibles avec d'autres symboles avec des effets plus ou
moins bizarres et facile a debugger et symbole generalement inconnu du
debugger.

http://www.parashift.com/c++-faq-lite/inline-functions.html#faq-9.5

--
Sam

Back to top
kanze@gabi-soft.fr
Guest





PostPosted: Tue May 25, 2004 7:35 am    Post subject: Re: printf Vs cout Reply with quote

Jean-Marc Bourguet <jm (AT) bourguet (DOT) org> wrote

Quote:
Gaël Jaffré <jaffre (AT) irit (DOT) fr> writes:

Quel problème peut-il y avoir si en passant de C à C++ on continue à
utiliser :

- printf("..."); au lieu de cout << "...";

Tout les problemes habituels de printf. En particulier pas de
verification la correspondance de type entre ce qui est attendu et ce
qui est reellement passe et pas de possibilite d'utiliser des classes.

Sans parler de l'extensibilité, ni la séparation des concernes -- la
gestion du flux de caractères est séparée du formattage en iostream.

Dans la pratique, même si le potentiel d'erreur avec printf est elevé,
je ne me rappelle pas d'y avoir eu de problèmes réels. En revanche, je
ne crois pas d'avoir jamais écrit une application sans au moins un
surcharge de l'opérateur <<, et sans au moins un streambuf sur mésure.
Deux choses complétement impossible avec printf.

--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34

Back to top
Display posts from previous:   
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.