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

[C] Quelqu'un pour m'expliquer ce code?

[][[]][[[]]]
[][[]][[[]]]
Niveau 8
03 janvier 2014 à 19:29:54

Bonsoir,
J'ai trouvé de code sur internet afin de savoir si un mot est contenu dans un fichier :
http://pastebin.com/0YzPXGMT

Il marche parfaitement mais je le comprends pas très bien, même après recherche je ne comprend pas le but des typedef, je ne comprends donc pas cette ligne :
t_chaines n1,n2

Si quelqu'un peut m'éclairer :ange:

Google_Bot
Google_Bot
Niveau 14
03 janvier 2014 à 19:33:50

Euh, pour moi à la simple lecture il marche tout sauf "très bien" tel qu'il est modifié (le nom de fichier passé en paramètre ne sert à rien, entre autres).

Le typedef dit juste que t_nom_fichiers est synonyme de "tableau de 10 caractères" (donc chaîne de 9 caractères utiles), et t_chaines est synonyme de "tableau de 100 caractères" (donc chaîne de 99 caractères utiles).

[][[]][[[]]]
[][[]][[[]]]
Niveau 8
03 janvier 2014 à 19:39:41

D'accord j'ai compris pour les typedef j'ai pu les supprimer :ok:

Quand je disais qu'il marchait très bien c'est juste que j'ai testé et qu'il me retournais les bonnes choses, après je vois pas non plus ce qu'il fait là ce fichier :(

[][[]][[[]]]
[][[]][[[]]]
Niveau 8
03 janvier 2014 à 19:42:21

Et cette ligne :
while(1){
...
}

C'est tant que quoi vaut 1 :( ?

Ace_Attorney
Ace_Attorney
Niveau 10
03 janvier 2014 à 19:52:39

La boucle while est une boucle infini, le 1 (ou toute autre valeur différent de 0), équivaut à true pour la boucle while.

Et vu que le 1 est une constante et qu'elle ne sera jamais différente de 0, la boucle va continuer éternellement.

[][[]][[[]]]
[][[]][[[]]]
Niveau 8
03 janvier 2014 à 19:53:49

Très bien merci ! :)

[][[]][[[]]]
[][[]][[[]]]
Niveau 8
03 janvier 2014 à 19:58:47

Et dernière question :noel:

Quelqu'un voit comment savoir à quel endroit ( ou lignes ) du fichier le mot à était trouvé ?

Schiffer
Schiffer
Niveau 10
03 janvier 2014 à 20:10:04

Tu peux faire un compteur qui incrémente à chaque fois qu'un mot est scanné

[][[]][[[]]]
[][[]][[[]]]
Niveau 8
03 janvier 2014 à 20:11:27

Bien vu je vais testé ça, et comme il y a le même nombre de mot dans chaque ligne je pourrais connaitre la ligne :)

[][[]][[[]]]
[][[]][[[]]]
Niveau 8
03 janvier 2014 à 20:13:31

Ca à l'air de bien fonctionner, merci Schriffer :)

[][[]][[[]]]
[][[]][[[]]]
Niveau 8
03 janvier 2014 à 20:47:54

Question bête, pourquoi je ne peux pas faire ça :
char motCherche[100];
scanf("%s",&motCherche);
char mot1[100],mot2[100]=motCherche;

Je veux que ce soit l'utilisateur qui rentre le mot

Google_Bot
Google_Bot
Niveau 14
03 janvier 2014 à 21:35:19

char motCherche[100];
:d) tu déclares un tableau de 100 caractères, et motCherche devient donc un pointeur sur le premier caractère du tableau. (cf. la définition d'un tableau en C)

scanf("%s",&motCherche);
:d) tu donnes l'adresse du pointeur là, avec le &. scanf veut l'adresse du premier élément du tableau de caractères, pas l'adresse de cette adresse. :)

[][[]][[[]]]
[][[]][[[]]]
Niveau 8
04 janvier 2014 à 09:37:43

D'accord, mais ces 2 codes revoient la même chose:
char motCherche[100];
scanf("%s",&motCherche);
printf("\n%s",motCherche);

char motCherche[100];
scanf("%s",motCherche);
printf("\n%s",motCherche);

Pourquoi? :question:

Et donc comment faire pour que copier le contenu de motRecherche dans mot1[100] et mot2[100] ?

[][[]][[[]]]
[][[]][[[]]]
Niveau 8
04 janvier 2014 à 10:55:56

Topic clos j'avais oublié la base, il suffit de faire une boucle avec mot[i]=motCherche[i]

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