Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2968 connectés 

 


Dernière réponse
Sujet : DEV C++ I LOVE U !!!!!!!!!!!!!
PompUsine

El_Gringo a écrit a écrit :

écoute, pour programer sous windows, c assez différent de sous Dos, alors, vas sur google, tapes "tutoriels windows C++", et regardes. c impossible de t'expliquer correctement ici c trop complexe...
 
et, de rien l'apprenti :D  
 
 




MERCCHHHIII !!!!!!!! :D


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
PompUsine

El_Gringo a écrit a écrit :

écoute, pour programer sous windows, c assez différent de sous Dos, alors, vas sur google, tapes "tutoriels windows C++", et regardes. c impossible de t'expliquer correctement ici c trop complexe...
 
et, de rien l'apprenti :D  
 
 




MERCCHHHIII !!!!!!!! :D

El_gringo écoute, pour programer sous windows, c assez différent de sous Dos, alors, vas sur google, tapes "tutoriels windows C++", et regardes. c impossible de t'expliquer correctement ici c trop complexe...
 
et, de rien l'apprenti :D

 

[edtdd]--Message édité par El_Gringo--[/edtdd]

PompUsine Salut à tous !! :)
Je débute en C, et je me suis installé DEV C++ (car Borland ils sont bien gentil mais c'est désespérant  :ouch: )
Donc je fait un petit prog tout naze pour essayer, mais il ne s'affiche que sous DOS, il veut pas marcher sous Windows (PS: je suis sous NT4 là )
 
Le voilà :  
 
/* Essai de programme Windows*/
#include <stdio.h>
 
main ()
 {
 printf : ("Ca veut pas s'afficher !!\n" );
   return 0;
   }
 
Quelqu'un sait-il comment faire pour quu'il sa'affiche sous Windows ce message ??
Une option a rajouter ou à cocher ??
Merci à vous les PROS !! :hello:
PompUsine Salut !! :)
Voilà je débute en C, et j'ai pris DEV C++ (Car Borland c'est bien beau mais c'est un peu désespérant, y'a trop d'options   :ouch: )
Donc voilà, j'ai une merde, je fait un petit machin, mais je n'arrive qu'à le lancer sous DOS, sous Windows (je suis sous NT là),il ne veut pas se lancer :(
Voilà c'est ça :  
 
/* Essai de programme Windows*/
#include <stdio.h>
 
main ()
 {
 printf : ("Ca veut pas s'afficher !!\n" );
   return 0;
   }
 
Voilà, est-ce que je doit faire une manipe spéciale pour qu'il s'affiche sous Windaube ??
Merci à vous les PROS !! :hello:
gilou

Sayajin a écrit a écrit :

On m'a déjà donné cette explication ! Mais les compilo borland et visual détecte tout de suite l'erreur, pour dev-c++ faut ajouter certaines options au compilateur ! ! !  




Certes, puisqu'a la base ce n'est pas necessairement une erreur, il est normal qu'il faille ajouter des options.
A+,

sayajin On m'a déjà donné cette explication ! Mais les compilo borland et visual détecte tout de suite l'erreur, pour dev-c++ faut ajouter certaines options au compilateur ! ! !
gilou

Sayajin a écrit a écrit :

Dans le même genre avec Dev-c++, il accepte ca :
 
int Bad[5,2];
 
par contre dés que tu rajoutes les options suivantes aux compilateurs "-ansi -pedantic-errors", il détecte que c'est une erreur non conforme au ANSI C++ ! Par contre certains disent que c'est pas vraiment une erreur, et considèrent que la première valeur 5 est à la libre utilisation du programmeur ! Quoi qu'il en soit Dev-c++ considère cette déclaration comme int Bad[2]; mais d'autres compilateur aurait émis une erreur, d'ailleur c'ets ce qui est dis dans le livre de Bjarne Stroustrup ! ! !  




Ben oui, probablement valable a cause de la signification de la virgule dans un terme expression1 , expression2 qui comme chacun sait, evalue d' abord expression1, puis expression2, et retourne cette derniere valeur. (Et c'est aussi dans le standard du C-ansi)
donc dans int Bad[5,2];, il voit une expression a evaluer pour le tableau, il evalue le premier terme, 5, neglige (discard) cette valeur, il evalue le second terme, et garde sa valeur comme evaluation de 5,2, d' ou l'allocation d' un int [2];
Donc si ton code n' etait pas clairement du C++, mais en fait du C, il se peut qu' il ait ete compile comme du C, auquel cas, le comportement du compilo est correct.
A+,

 

[edtdd]--Message édité par gilou--[/edtdd]

sayajin Dans le même genre avec Dev-c++, il accepte ca :
 
int Bad[5,2];
 
par contre dés que tu rajoutes les options suivantes aux compilateurs "-ansi -pedantic-errors", il détecte que c'est une erreur non conforme au ANSI C++ ! Par contre certains disent que c'est pas vraiment une erreur, et considèrent que la première valeur 5 est à la libre utilisation du programmeur ! Quoi qu'il en soit Dev-c++ considère cette déclaration comme int Bad[2]; mais d'autres compilateur aurait émis une erreur, d'ailleur c'ets ce qui est dis dans le livre de Bjarne Stroustrup ! ! !
altac c'est meme dangereux de penser que printf(str) et identique a printf("%s", str) ! imagine que ton code affiche une chaine inconnue (entree par l'utilisateur par exemple) avec un printf(str) et que cette chaine contienne des "%" un peu n'importe comment ... tu risques d'avoir de bonne surprises ;)
essaye printf("%s" ) pour te donner une idee ...
barbarella oui, oui, gilou,
 
mais franchement le respect des normes de la part des compilateurs, devinne ce que j'en pense ;). Sinon oui tu as raison.
gilou

Barbarella a écrit a écrit :

slt les nenfants,
 
il me semble que pour des fonc comme printf qui font/peuvent faire du formatage de chaine certains caractères sont délicat a manipuler. le % en fait partie comme le "
 
pour les résoudre il suffit d'utilser \ devant le caractère rebel :D  




Pour le % dans la chaine de formatage il suffit d' en ecrire deux. C'est la norm qui dit ca.
A+,
A+,

gilou Deja comme ton code me semble errone, il est difficile d' en tirer une conclusion. Si tu allouais correctement str, on aurait peut etre une meilleure idee de ce qui se passe, mais la, le comportement est aleatoire a priori (neanmoins, il y a de tres forte chances que tout se passe bien dans ce cas precis, mais ca a des chances de causer pb dans d' autres cas ("%aa%aaaaaa"?)):
 
#include "stdio.h"  
void main()  
{  
char*str="%%"; /* ici l' allocation sera correcte */
printf("%s\n",str);  
printf(str);
printf ("\n" ); /* histoire de flusher le precedent */  
}  
printf(str); equivaut a printf("%%" ); ce qui ne doit generer qu' un seul % en sortie, les deux %% etant dans la chaine de format.
 
Pour ce qu' il devrait y avoir dans le premier cas, effectivement %%, puique les deux % ne sont pas dans la chaine de format, nais dans une chaine de parametre.
Si Borland continue a sortir %% pour le second cas, c' est lui qui est en erreur.
A+,

 

[edtdd]--Message édité par gilou--[/edtdd]

barbarella slt les nenfants,
 
il me semble que pour des fonc comme printf qui font/peuvent faire du formatage de chaine certains caractères sont délicat a manipuler. le % en fait partie comme le "
 
pour les résoudre il suffit d'utilser \ devant le caractère rebel :D
verdoux Et c'est quoi le bon comportement ?
slvn bah en tout cas il fait pas pareil que Borland !
 
et ce le coup du printf(str) != printf("%s",str), c ets carment bizarre car ca fait deux choses differentes pour le meme entendement!
Maxaks C grave ? Je l'ai Dev c++ , je me pose po de kestions ... Ca fait qu'il est pourri ? ou au contraire ?
slvn avec dev C++ :
%%
%  
 
alors qu avec borland :
%%
%%
 
bref, je vais laisser tomber Dev C++.....

 

[edtdd]--Message édité par slvn--[/edtdd]

Maxaks Ca fait koa ?
slvn #include "stdio.h"
void main()
{
char*str;
str="%%";
printf("%s\n",str);
printf(str);
}
 
!!!!!!!!!( a tester avec str="%aa%aaaaaa" ca donne de trucs marrant aussi :) )

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)