Bonjour,
j'ai besoin de modifier le code source de getchar();mais malheureusement je ne sais n'es pue le trouver sur internet ni même le programmer moi même. Alors si quelqu'un peut me le donner, cela serai super ! :D
Version imprimable
Bonjour,
j'ai besoin de modifier le code source de getchar();mais malheureusement je ne sais n'es pue le trouver sur internet ni même le programmer moi même. Alors si quelqu'un peut me le donner, cela serai super ! :D
Bonjour
getc(stdin) ?
j'ai déjà tenté mais ça marche pas!:?
Peux tu être un peu plus précis ? La compilation échoue, le link, l'exécution ?
Ca beugue quand j'essaye d'ouvre stdin : le FILE* renvoie NULL!
Huh?
Mais on n'est pas supposé "ouvrir" stdin!
c'est vrai?!8O
Donc normalement si j'enlève fopen et fclose tous ce passe bien?
et sinon quand es que stdin se met à jours?
Exact. Avant même que la fonction main ne soit appelée (je te rappelle que c'est l'OS qui appelle main, ça ne se fait pas par magie ...), l'OS ouvre 3 fichiers qui sont l'entrée standard (ça peut être la clavier), la sortie standard (la console) et la sortie standard (la console) et les associe respectivement aux flux (en gros un flux est un objet de type FILE *) stdin, stdout et stderr. Après que main ait retourné, l'OS ferme ces fichiers.Citation:
Envoyé par brastir
Hein ?Citation:
Envoyé par brastir
Sinon comme l'indique Mabu, getchar(c) est la même chose que getc(stdin);
Euh, pourquoi faire ? En principe, tu n'as pas à modifier les fonctions de la bibliothèque standard. Elles ont été écrites (en C, C étendu, assemblelur...) et optimisées pour ta plateforme.
Est-ce que tu te rends compte des conséquences possibles d'une telle action sur le code existant ?
Si nécessaire, tu peux cependant créer ton getchar() avec un nom différent.
Que veux-tu faire exactement que ne saurait pas faire getchar() ?
Tout d'abbord merci à tous mon nouveau getchar(); marche à merveille.
Pour ED : je reprogramme getchar pour qu'il sarrête quand un booléen est mit à zero. Il faut que je puisse arréter le déroulement de getchar(); car j'utilise un thread qui comporte getchar() et qui doit être arréter voilà tout :)
Oui mais pour tuer le thread il faut utiliser une fonction : "pthread_exit();" ok mais je la met cette fonction?
C'est vrai?!
Mais ce que tu vien de me dire va me faciliter la vie merci!:yaisse2: