Completement debutant !

Completement debutant ! - C++ - Programmation

Marsh Posté le 08-04-2003 à 09:40:46    

Je suis un super débutant avec des base en PHP et j'aimerai commencer a programmer en C.
 
Là je suis sous windows.
 
Alors voici mes questions :  
 
Que peut on faire avec du C ?
 
Des applications a fenetre pour Windows et linux complexe ou non ?
 
Avec quel programme (free biensur) je peu compiler ?
(j'ai actuellement Cygwin mais ca me parait tres ostile)
 
Y a t il de bon tutos sur le web ?
 
Si il y a des choses a savoir dites les moi svp.
 
Merci
 
 
 
 
 
 
 

Reply

Marsh Posté le 08-04-2003 à 09:40:46   

Reply

Marsh Posté le 08-04-2003 à 09:50:45    

benwar a écrit :


Que peut on faire avec du C ?


Tout. Jeux, applications, démos, etc...
 

benwar a écrit :


Avec quel programme (free biensur) je peu compiler ?
(j'ai actuellement Cygwin mais ca me parait tres ostile)


Dev C++
 

benwar a écrit :


Y a t il de bon tutos sur le web ?


La bibliolink de ce forum. Je te recommande l'excellent cours de Christian Casteyde, dont j'ai oublié l'URL, mais que tu peux facilement retrouver en tapant "Christian Casteyde" dans Google. Le cours s'appelle "The Mega Cours of C/C++". Il doit être dans la bibliolink.
 

benwar a écrit :


Si il y a des choses a savoir dites les moi svp.


Le C permet de tout faire et laisse une totale liberté d'action au programmeur. C'est la sa grande qualité mais également son grand défaut car si tu "te laisses aller", tu plantes ta machine direct !
Les pointeurs sont assez délicats à appréhender au début.
N'espère pas apprendre le C en 21 jours ! Il faut au minimum 6 mois pour en apprécier toutes les subtilités.


Message édité par Harkonnen le 08-04-2003 à 09:51:14

---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 09:56:28    

Harkonnen a écrit :


N'espère pas apprendre le C en 21 jours ! Il faut au minimum 6 mois pour en apprécier toutes les subtilités.


Et encore à condition de savoir programmer.


---------------
Retraité de discussions
Reply

Marsh Posté le 08-04-2003 à 09:57:56    

chtigarix a écrit :


Et encore à condition de savoir programmer.

:jap:
c'est un métier

Reply

Marsh Posté le 08-04-2003 à 10:01:48    

noldor a écrit :

:jap:
c'est un métier


Ouais :/  
Un vrai miroir aux alouettes, qui fait réver quand on n'est pas dedans, mais qui te fait éprouver une cruelle désillusion une fois que tu l'exerces :'(


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 10:03:15    

Harkonnen a écrit :


Ouais :/  
Un vrai miroir aux alouettes, qui fait réver quand on n'est pas dedans, mais qui te fait éprouver une cruelle désillusion une fois que tu l'exerces :'(

Perso, ça m'a jamais fait rêver
C'est un job comme un autre, avec ses bons et ses mauvais jours

Reply

Marsh Posté le 08-04-2003 à 10:04:19    

noldor a écrit :

Perso, ça m'a jamais fait rêver
C'est un job comme un autre, avec ses bons et ses mauvais jours
 


 
...tout comme j'n'ai jamais u de désillusion (du moins pas pour le C, ni l'info en général !).

Reply

Marsh Posté le 08-04-2003 à 10:06:17    

El_gringo a écrit :


 
...tout comme j'n'ai jamais u de désillusion (du moins pas pour le C, ni l'info en général !).


Les désillusions ne proviennent pas du boulot en lui même, mais surtout de certaines décisions prises par les "décideurs"...


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 10:08:23    

Harko > moi j'aurais dit tout le temps des décideurs (ce qui inclu les clients :D) ;)

Reply

Marsh Posté le 08-04-2003 à 10:11:11    

Harkonnen a écrit :


Les désillusions ne proviennent pas du boulot en lui même, mais surtout de certaines décisions prises par les "décideurs"...

faut changer de boite alors

Reply

Marsh Posté le 08-04-2003 à 10:11:11   

Reply

Marsh Posté le 08-04-2003 à 10:14:06    

VisualC++ a écrit :

Harko > moi j'aurais dit tout le temps des décideurs (ce qui inclu les clients :D) ;)

Clair !! :jap: :jap:


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 10:14:35    

noldor a écrit :

faut changer de boite alors


ou alors devenir décideur moi même [:nofret] [:nofret]


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 10:20:05    

Harkonnen a écrit :


ou alors devenir décideur moi même [:nofret] [:nofret]

tout à fait
mais c'est p-e pas la bonne période pour ça

Reply

Marsh Posté le 08-04-2003 à 10:24:03    

Bon vous m'avez un peut d'ecouragé  :cry:  
 
Mais juste pour le moment plsu tard quand j'aurrais plus temps.
 
Sinon si je commencai pas le VB ?


Message édité par benwar le 08-04-2003 à 10:24:39
Reply

Marsh Posté le 08-04-2003 à 10:31:54    

benwar a écrit :

Bon vous m'avez un peut d'ecouragé  :cry:  


[:calin]
 

benwar a écrit :


Sinon si je commencai pas le VB ?


[:lorill]


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 08-04-2003 à 11:32:16    

benwar a écrit :


Sinon si je commencai pas le VB ?


 
:non: à la limite C++Builder ou Delphi, t'as la facilité de VB pour l'interface mais t'as un vrai langage objet derrière


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 08-04-2003 à 11:33:37    

je trouve qu'on s'y perd avec c++ builder et toutes les fenêtres.
 
Je ne programme qu'avec vi  :whistle:


---------------
Retraité de discussions
Reply

Marsh Posté le 08-04-2003 à 13:33:11    

benwar a écrit :

Je suis un super débutant avec des base en PHP et j'aimerai commencer a programmer en C.
 
Là je suis sous windows.
 
windows c'est pas super pour débuter. Tu auras tendance a faire du code pas portable.
 
Alors voici mes questions :  
 
Que peut on faire avec du C ?
 
Tout.
 
Des applications a fenetre pour Windows et linux complexe ou non ?
 
Non c'est assez facile. Mais c'est de la programmation évenementielle. Je suis pas sûr que le PHP donne des bases pour ca. Sous windows tu as l'IDE de visual studio qui est impec, et sous linux y'a Motif ou X11 qui est pas mal pour débuter.
 
Avec quel programme (free biensur) je peu compiler ?
(j'ai actuellement Cygwin mais ca me parait tres ostile)
 
Borland offre un compilo gratuit. sinon, je te conseille le compilo de Watcom.
 
Y a t il de bon tutos sur le web ?
 
Deja la FAQ de fclc : http://www.isty-info.uvsq.fr/~rumeau/fclc/
 
Si il y a des choses a savoir dites les moi svp.
 
Commence par des petits programme simple. Avance progressivement. Poste du code, on le corrigera.
 
Merci
 
 
 
 
 
 
 
 

Reply

Marsh Posté le 09-04-2003 à 09:07:34    

Merci de vos reponse c cool ;)
 
Bon j'ai code un hello world sans tros de probleme sauf que quand je demande a Dev C++ de m'ouvrir un nouveau projet il me demande plein de truc du style : Code pour DOS ? POur Windows etc ? et a chaque fois cela change les includes bref moi j'efface tout ca et je fait comme dans les tutos
 
Voila premier probleme :
 
J'ai repompé du code sur un site le compilo me dit qu'il y a des erreurs dans le code apres des recherche je me suis apercu que cela venait de :

Code :
  1. __asm
  2. {
  3. lea eax, shellc0de
  4. add eax, 0x34
  5. xor ecx, ecx
  6. mov cx, 0x1b0
  7. wah:
  8. xor byte ptr[eax], 0x95
  9. inc eax
  10. loop wah
  11. }


 
D'apres ce que j'ai compris "asm" est le type de machine sur le kel on veux faire tourner le programe ,non ?
 
Si oui comment lui dire que c pour du 886;win32;linux; etc c tres vague pour moi !
 
 
Merci


Message édité par benwar le 09-04-2003 à 09:11:29
Reply

Marsh Posté le 09-04-2003 à 09:13:35    

Euh non, __asm signifie que le code qui suit est de l'assembleur en ligne !
A mon avis tu t'es un peu loupé :d


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 09-04-2003 à 09:17:11    

Harkonnen a écrit :

Euh non, __asm signifie que le code qui suit est de l'assembleur en ligne !
A mon avis tu t'es un peu loupé :d


 
ha merde !

Reply

Marsh Posté le 09-04-2003 à 09:18:53    

un commentaire se note bien avec // devant ?

Reply

Marsh Posté le 09-04-2003 à 09:20:37    

Oui, ou /* ... */ si tu as des commentaires sur plusieurs lignes


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 09-04-2003 à 09:24:22    

Harkonnen a écrit :

Oui, ou /* ... */ si tu as des commentaires sur plusieurs lignes


tu penses que je peux poster du code meme si c un exploit ?

Reply

Marsh Posté le 09-04-2003 à 11:02:06    

benwar a écrit :


tu penses que je peux poster du code meme si c un exploit ?


 
c pas charte compliant ca... [:toxicavenger]

Reply

Marsh Posté le 09-04-2003 à 12:43:31    

Voila mon 1er "programme" en C  :pt1cable:  
 
 

Code :
  1. #include <stdio.h>
  2. int main(void)
  3. {
  4. int i ;
  5. int d ;
  6. double x ;
  7. i=58 ;
  8. x=3.14159226535 ;
  9. d=2*x*i ;
  10. printf   ("\n \n Calcule de nombres entier et decimals \n \n" ) ;
  11. printf   ("Valeur du rayon : %d \nValeur de pi : %f \n \n" ,i,x) ;
  12. printf   ("Le perimetre arrondi est egal a : %u \n" ,d) ;
  13.   return 0;
  14. }


 
Bon je ne sais toujours pas recuperer les donnees taper par l'utilisateur (exemple : "tapez le rayon du cercle :" )  
 
et j'ai aussi un probleme avec les types dans mes declarations.
Ma declaration int d ; le type int n'est pas approprié car il arrondi le nombre alors que je veux les chiffres apres la virgule j'ai donc testé avec double et la un nombre bizard est apparu ! .
 
Voila merci de votre aide.
 
PS : a j'oubliai je ne suis pas un tres bon en orthographe mais comment mettre des caractères spétiaux dans en printf des : à é è ç.


Message édité par benwar le 09-04-2003 à 12:49:03
Reply

Marsh Posté le 09-04-2003 à 13:08:26    

Alors déjà // c'est valide mais seulement en C++
Pour recupe des données au clavier ca va être la famille des scanf, getc, gets... => stdio.h
 

Reply

Marsh Posté le 09-04-2003 à 13:25:59    

bon deja pour pi, vaut mieux la recalculer soi meme avec :
 

Code :
  1. 4 * atan (1.0)


 
Ensuite, pour les commentaires // et /* */ sont tous les deux valides, au moins depuis C99. Pour avant C99, je ne suis pas sûr, mais en tout état de cause, et pour une meilleure ergonomie vis à vis des programmeurs C++, la plupart des compilo acceptaient le // comme commentaire.


Message édité par ToxicAvenger le 09-04-2003 à 13:26:15
Reply

Marsh Posté le 09-04-2003 à 13:29:29    

ToxicAvenger a écrit :

bon deja pour pi, vaut mieux la recalculer soi meme avec :
 

Code :
  1. 4 * atan (1.0)


 
Ensuite, pour les commentaires // et /* */ sont tous les deux valides, au moins depuis C99. Pour avant C99, je ne suis pas sûr, mais en tout état de cause, et pour une meilleure ergonomie vis à vis des programmeurs C++, la plupart des compilo acceptaient le // comme commentaire.


 
Merci pour cette information.
 
Et pour mon code ?

Reply

Marsh Posté le 09-04-2003 à 13:29:45    

benwar a écrit :


Code :
  1. d=2*x*i ;


 


 
bon deja, un warning:
 

conversion from 'double ' to 'int ', possible loss of data


 
Tu essayes de faire rentrer un double (x) dans un int(d), et ca va etre dur, meme en forcant  :D  
 
Si tu sais te servir de ton compilo, met le warning au maximum de sa sensibilité.


Message édité par ToxicAvenger le 09-04-2003 à 13:30:37
Reply

Marsh Posté le 09-04-2003 à 13:36:12    

ToxicAvenger a écrit :


 
bon deja, un warning:
 

conversion from 'double ' to 'int ', possible loss of data


 
Tu essayes de faire rentrer un double (x) dans un int(d), et ca va etre dur, meme en forcant  :D  
 
Si tu sais te servir de ton compilo, met le warning au maximum de sa sensibilité.


 
donc int(d) je le transforme en double(d)

Reply

Marsh Posté le 09-04-2003 à 13:38:15    

benwar a écrit :


 
Merci pour cette information.
 
Et pour mon code ?


 

Code :
  1. #include <stdio.h>
  2. #include <math.h> 
  3. #include <stdlib.h>
  4. #define I 58.0
  5. int main(void)
  6. {
  7. double x = 4 * atan (1.0);
  8. double d = 2.0 * I * x;
  9. printf("%g %g %g\n", I, x, d);
  10. return EXIT_SUCCESS;
  11. }


 
Note, ca deconnait dans tes printf: %u c'est pour des entier.
 
Edit: Rappel:
 
d/D : entier décimal
o/O: entier octal
i/I: entier (base quelconque)
u/U: entier décimal non signé
x/X: entier hexadecimal
e/E/f/g/G: flottant (double)
s/c: pour les chaines de caracteres


Message édité par ToxicAvenger le 09-04-2003 à 13:40:51
Reply

Marsh Posté le 09-04-2003 à 13:55:30    

Nouveau code  :  
 

Code :
  1. #include <stdio.h>
  2.  
  3.   int main(void)
  4.   {
  5.      int i ;
  6.      double d ;
  7.      double x ;
  8.      i=58 ;
  9.      x=3.14159226535 ;
  10.      d=2*x*i ;
  11.      printf   ("\n \n Calcule de nombres entier et decimals \n \n" ) ;
  12.      printf   ("Valeur du rayon : %d \nValeur de pi : %g \n \n" ,i,x) ;
  13.      printf   ("Le perimetre est egal a : %g \n" ,d) ;
  14.      return 0;
  15.   }


 
J'ai volontairement exclu #include <math.h> car je prefere avancer pas a pas.
 
Merci pour :
 
d/D : entier décimal  
o/O: entier octal  
i/I: entier (base quelconque)  
u/U: entier décimal non signé  
x/X: entier hexadecimal  
e/E/f/g/G: flottant (double)  
s/c: pour les chaines de caracteres
 
je n'avait vraiment pas compris je pensait pouvoir utiliser n'importe quoi %dddkjhd (comme une declaration de variable en php  :whistle: )


Message édité par benwar le 09-04-2003 à 13:56:03
Reply

Marsh Posté le 09-04-2003 à 16:08:09    

le reality show de la catégorie "programmation"  :)


---------------
Retraité de discussions
Reply

Marsh Posté le 09-04-2003 à 17:40:46    

chtigarix a écrit :

le reality show de la catégorie "programmation"  :)  


 
 :??:

Reply

Marsh Posté le 15-04-2003 à 16:01:56    

benwar a écrit :

Bon vous m'avez un peut d'ecouragé  :cry:  
 
Mais juste pour le moment plsu tard quand j'aurrais plus temps.
 
Sinon si je commencai pas le VB ?


 
Mais non, te décourage pas pour trois messages  :) ! Ca peut venir très vite l'apprentissage du C ! C'est bien un truc de développeur c que d'aimer à faire croire que cette discipline est obscure et que seule l'élite est capable d'y arriver après des années de travail acharné...  
C'est sûr qu'en 21 jours tu maitriseras pas toutes les subtilités, mais tu pourras déjà faire pas mal de trucs... Un jeu par exemple (avec gestion du joystick, sons, sprites et tout et tout !), tu peux y arriver facilement avec des notions de base (j'en avais fait un en première année d'étude avec Allegro). Lance toi !  :)


Message édité par leFab le 15-04-2003 à 16:04:24

---------------
L'ennemi est con : il croit que c'est nous l'ennemi, alors que c'est lui ! (Desproges)
Reply

Marsh Posté le 15-04-2003 à 17:10:07    

leFab a écrit :

C'est bien un truc de développeur c que d'aimer à faire croire que cette discipline est obscure et que seule l'élite est capable d'y arriver après des années de travail acharné...  
C'est sûr qu'en 21 jours tu maitriseras pas toutes les subtilités, mais tu pourras déjà faire pas mal de trucs...


Il faut quand même faire une différence entre programmer et programmer proprement !
C'est sur qu'une fois le concept de mots clé & pointeurs assimilés, ça peut aller très vite !
En revanche, penser à libérer sa mémoire, faire du code propre, etc... prend beaucoup plus de temps


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 15-04-2003 à 17:12:42    

Harkonnen a écrit :


Il faut quand même faire une différence entre programmer et programmer proprement !
C'est sur qu'une fois le concept de mots clé & pointeurs assimilés, ça peut aller très vite !
En revanche, penser à libérer sa mémoire, faire du code propre, etc... prend beaucoup plus de temps


 
 :jap: Je n'ai pas dit le contraire...


---------------
L'ennemi est con : il croit que c'est nous l'ennemi, alors que c'est lui ! (Desproges)
Reply

Marsh Posté le 15-04-2003 à 17:32:35    

tartalap a écrit :

ca C kler mais avec quelques pages de regles a respecter pour coder proprement, y a pas de raison de pas y arriver.
 
Mais C surtout avec l'experience que l'on voit tout ca, quand on revoit son vieux code, on s'en rend tout de suite compte :lol:


 
C'est plus facile de critiquer du code tout fait (même par soit), que de concevoir correctement son code.

Reply

Marsh Posté le 15-04-2003 à 17:45:03    

benwar a écrit :

Nouveau code  :  
 

Code :
  1. x=3.14159226535 ;




 
Tu vas arrêter d'écorcher Pi ? :D
 
3.14159265358979 ... :D
 
En tout cas, je suis d'accord avec vous ... Il ne fait pas bon reprendre son vieu code .... (hum ... Un de mes premiers projets, c'était un moteur 3D en Pascal / ASM ... Illisible ! :D)


---------------
last.fm
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed