CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

question de base en C

julien_cheko
julien_cheko
Niveau 2
15 mai 2003 à 22:11:44

Je commence juste à apprendre leC
Voilà ce que je tape dans ma cht´ite fenetre de DevC++:

---------------------------------------------

  1. include < windows.h>
  2. include < stdio.h>
  3. include < stdlib.h>

int
main ( int argc, char *argv[])
{
printf ( "Hello World!\n");
char caractereLu;
caractereLu = getchar ( );
printf ( "%c", caractereLu);
printf ( "Press ENTER to continue...\n");
getchar ( );
return 0;
}

-------------------------------------------------

Mecri de m´aider car j´ai envie de continuer et ceci me bloque déjà.

Kelios
Kelios
Niveau 8
15 mai 2003 à 23:23:44

" Mecri de m´aider car j´ai envie de continuer et ceci me bloque déjà. "
Commence par nous décrire tes erreurs, on pourra t´aider par la suite: quesque DevC++ t´indique à la compilation?

Kelios
---------

Kelios
Kelios
Niveau 8
15 mai 2003 à 23:33:51

Hum, maintenant, que j´y pense, tu n´a pas spécifié que tu avais compilé:
L´a tu fais au moins? ( Je crois voir venir le problème ; P)

Kelios
---------

julien_cheko
julien_cheko
Niveau 2
16 mai 2003 à 12:33:50

Exact, je n´ai pasmis ce que ca me mettait a la compilation. Je va

Manest2
Manest2
Niveau 9
16 mai 2003 à 12:47:04

Le premier mort en direct sur un forum medame et messieur : )

lynkdr
lynkdr
Niveau 5
16 mai 2003 à 16:53:09

c´est un peu complique comme methode pour parvenir a ce que tu veux faire je trouve :

  1. include < windows.h>
  2. include < stdio.h>
  3. include < stdlib.h>

int main ( int argc, char *argv[])
{
char caractereLu; //c´est mieux de mettre les declarations en debut de fonction
printf ( " Hello World!\n");
printf("Pressez une touche");
scanf("%c", &);
printf ( "%c", caractereLu);
printf ( "Appuyez sur entree pour continuer\n");
getchar();
return 0;
}

Cette methode la me parait plus adaptee pour debuter.
Et commence plutot par des programmes consoles plutot que de commencer direct avec la prog windows.

  1. include < stdio.h>

main()
{
char caracterelu;
printf("pressez une touche\n");
scanf("%c", &);
printf("vous avez presse %c\n", caracterelu);
printf("Appuyez sur entree pour continuer");
getchar();
return 0; //ici, ce n´est pas vraiment utile
}

c´est deja plus simple que les int main(int argc, char *argv[]) etc...

lag-it
lag-it
Niveau 10
16 mai 2003 à 21:08:31

Tiens, tu te met au C ? Et l´asm ?

Kelios
Kelios
Niveau 8
16 mai 2003 à 22:52:07

"
main()
"
Si jamais ça compile, chapeau à la non-standardisation de ton compilateur...

" return 0; //ici, ce n´est pas vraiment utile "
? ! 0_o N´importe quoi:
Ça ne compilera même pas, à moins toujours que Mr. non-standardisation vienne encore faire un tour ici...

"

  1. include < stdio.h>

int
main ( int argc, char *argv[])
{
printf ( " Hello World!\n");
char caractereLu;
caractereLu = getchar ( ) ;
printf ( " %c", caractereLu);
printf ( " Press ENTER to continue...\n");
getchar ( ) ;
return 0;
} "

Je le verrait plus comme ça:

  1. include < stdio.h>
  2. include < stdlib.h>

int main ( int argc, char *argv[])
{
printf("Hello World!\n");

char caractereLu = getchar ( );
printf ( "%c", caractereLu);
system("PAUSE");
return 0;
}

Ça ne ferait pas grande différence, mais ça tournera probablement plus rapide...
Quoique la vitesse, ici, on s´en moque, le mot d´ordre est " Always Optimizzzzzzz" pour moi, même avec un Hello World ^^

Kelios
---------

Lightness1024
Lightness1024
Niveau 10
17 mai 2003 à 14:20:47

au fait les argc et argv c pas specifique a windows ou je me trompe ? les arguments de la ligne de commande yen a aussi dans tous les autres OS ( ca je suis sur) et ca doit etre normalisé main(int argc, char argv[]) ! !
que l´on devrait plutot ecrire:

  1. ifdef UNICODE
  2. define t_main wmain
  3. else
  4. define t_main main
  5. endif

t_main(int argc, TCHAR argv[])

Kelios
Kelios
Niveau 8
17 mai 2003 à 15:38:16

À mon bon souvenir, c´est effectivement normalisé...

Kelios
---------

lynkdr
lynkdr
Niveau 5
17 mai 2003 à 16:17:11

Kelios je te fais entierement confiance, tu t´y connais certainement plus que moi mais ca compile normalement en mode console avec un main() et sans de return 0;

lynkdr
lynkdr
Niveau 5
17 mai 2003 à 16:24:12
  1. include < stdio.h>

main()
{
char caracterelu;
printf("pressez une touche\n");
scanf("%c", &);
printf("vous avez presse %c\n", caracterelu);
scanf("%c " , &);
}

ca par exemple ca se compile parfaitement sans aucune erreur. Explication ? ?

Kelios
Kelios
Niveau 8
17 mai 2003 à 17:46:30

C´est bêtement un manque de normalisation du compilateur. Je ne remet pas en doute tes conaissances, mais si le compilateur suiverait un peu plus la norme, ça ne devrait pas compiler...

J´imagine que selon le ocmpilateur, ça doit être sous-entendu que c´est:
void main(void)
{
//...
return;
}
Même à ça, un main, pour moi, ça retourne toujours 0 ou ! =0... je n´aime pas trop les voir en void... ; P

M´enfin, merci de m´apprendre que l´on pouvait ommetre la valeur de retour d´une fonction, je n´avait jamais essayé...

Hum, une dernière chose, moi, je me base sur la norme ISO 14882 du C++ , étant donné que la norme ANSI est la norme du C, et non du C++: le problème, c´est le le texte officiel de cette norme n´est PAS disponible publiquement selon ma bible du C++ : (

"
Ce livre a pour but de présenter le langage C++ tel qu´il est décrit par la norme ISO 14882 du langage C++. Cependant, bien que cette norme ait été publiée en 1999, le texte officiel n´est pas librement disponible. Comme je ne veux pas cautionner le fait qu´un texte de norme international ne soit pas accessible à tous, je me suis rabattu sur le document du projet de normalisation du langage, datant du 2 décembre 1996 et intitulé « Working Paper for Draft Proposed International Standard for Information Systems -- Programming Language C++ ».
"

Le lien du Working Paper:
http://casteyde.christian.free.fr/cpp/cours/drafts/index.html

Comme ça, vous pourrez vérifier si ce que je dis à propos de la norme est vrai ^^

Kelios
---------

lynkdr
lynkdr
Niveau 5
19 mai 2003 à 09:13:06

ok ^^
c vrai que ca devrait pas compiler mais bon tant pis ca marche : )

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Création de sites web
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment