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

  FORUM HardWare.fr
  Programmation
  C++

  question tres conne mais je vois pas la :/

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

question tres conne mais je vois pas la :/

n°276897
Nokbilong
unique, comme tout le monde.
Posté le 28-12-2002 à 17:30:41  profilanswer
 

char var = 'a';
write(1, &var, 1);
 
 
et ca write rien :/
comme si c'etait pas 1 ld fd de la sortie std
mais j'ai rien touché :/
 
c sous un freebsd
 
kk1 a une idée?


---------------
"-Dites 33. -Export!!" [:nokbilong]
mood
Publicité
Posté le 28-12-2002 à 17:30:41  profilanswer
 

n°276901
samuelp
Posté le 28-12-2002 à 17:36:12  profilanswer
 

Pour quoi 1 au debut ? C'est un File Descriptor pour les fichier !
 
 Si tu fais un fd = fopen("monfichier","w+" );
 
tu fais un write(fd, var1,1) ça devrait aller :o

n°276902
Nokbilong
unique, comme tout le monde.
Posté le 28-12-2002 à 17:40:02  profilanswer
 

samuelp a écrit :

Pour quoi 1 au debut ? C'est un File Descriptor pour les fichier !
 
 Si tu fais un fd = fopen("monfichier","w+" );
 
tu fais un write(fd, var1,1) ça devrait aller :o


 
hu
c quoi la fd pour la sortie standard ? le shell


Message édité par Nokbilong le 28-12-2002 à 17:40:18

---------------
"-Dites 33. -Export!!" [:nokbilong]
n°276904
samuelp
Posté le 28-12-2002 à 17:41:29  profilanswer
 

Nokbilong a écrit :


 
hu
c quoi la fd pour la sortie standard ? le shell


 
T'as essayé un stdin ou &stdin un truc comme ça ?  
 
Faut inclure stdio.h avant

n°276907
Nokbilong
unique, comme tout le monde.
Posté le 28-12-2002 à 17:43:11  profilanswer
 

samuelp a écrit :


 
T'as essayé un stdin ou &stdin un truc comme ça ?  
 
Faut inclure stdio.h avant


 
vais test
 
sur le netbsd ou je codais j'ai tjs fait write(1 ... ca marchait :/
 
sans inclure d'header
 
je capte plus la
 :/
 
sur un netbsd :
 

(nk@lta)cat chelou.c
int   main()
{
  char grr;
  grr = 'a';
 
  write(1, &grr, 1);
}
(nk@lta)gcc chelou.c -o hu
(nk@lta)./hu
a(nk@lta)


 
:/
 
bon vé test avec stdio.h


Message édité par Nokbilong le 28-12-2002 à 17:52:16

---------------
"-Dites 33. -Export!!" [:nokbilong]
n°276912
Nokbilong
unique, comme tout le monde.
Posté le 28-12-2002 à 18:04:13  profilanswer
 

avec le header et write(stdout ...
 
ca change rien :/


---------------
"-Dites 33. -Export!!" [:nokbilong]
n°276946
HappyHarry
Posté le 28-12-2002 à 19:11:05  profilanswer
 

fflush(1) et tu verras que ca marche tout de suite mieux
 
il me semble que l'affiche sur la sortie standard est bufferisée, ca n'est affiché que quand on arrive sur un caractere fin de ligne \n
 
autre solution : virer la bufferisation, mais ca je me souviens plus du nom de la fonction

n°276991
Nokbilong
unique, comme tout le monde.
Posté le 28-12-2002 à 20:48:31  profilanswer
 

HappyHarry a écrit :

fflush(1) et tu verras que ca marche tout de suite mieux
 
il me semble que l'affiche sur la sortie standard est bufferisée, ca n'est affiché que quand on arrive sur un caractere fin de ligne \n
 
autre solution : virer la bufferisation, mais ca je me souviens plus du nom de la fonction


 
 
ouai mais en fait j'aimerai utiliser write :)
 
je sais char par char c lent et ca sert a rien :p
 
mais c pour mes cours en fait
je ml'etait dis je vais refaire ce que j'ai fait cette année, je commence par le debut, un putchar avec write
pouf ca marche pas :/
 
vu que je peux pas bosser je vais devoir aller boire :o


---------------
"-Dites 33. -Export!!" [:nokbilong]
n°277116
Nokbilong
unique, comme tout le monde.
Posté le 29-12-2002 à 14:52:43  profilanswer
 

pas d'autres idées ?
 
ca doit etre un truc tout con mais je vois pas ... :/
 
le meme code marche sur un netbsd et write queud sur un freebsd :/


---------------
"-Dites 33. -Export!!" [:nokbilong]
n°277124
schnapsman​n
Zaford Beeblefect
Posté le 29-12-2002 à 15:14:34  profilanswer
 

samuelp a écrit :

Pour quoi 1 au debut ? C'est un File Descriptor pour les fichier !
 
 Si tu fais un fd = fopen("monfichier","w+" );
 
tu fais un write(fd, var1,1) ça devrait aller :o


 
 
n'importe quoi  :whistle: , mélanger les FILE* retournés par fopen pour les utiliser avec write...
 
Pour ce qui est du 1: un process posix ouvre 3 toujours trois fichiers: entrée standard, sortie standard, sortie erreur; dans l'ordre ca donne 0(std in),1(std out) et 2(std err).


---------------
From now on, you will speak only when spoken to, and the first and last words out of your filthy sewers will be "Sir!"
mood
Publicité
Posté le 29-12-2002 à 15:14:34  profilanswer
 

n°277126
Nokbilong
unique, comme tout le monde.
Posté le 29-12-2002 à 15:20:06  profilanswer
 

schnapsmann a écrit :


Pour ce qui est du 1: un process posix ouvre 3 toujours trois fichiers: entrée standard, sortie standard, sortie erreur; dans l'ordre ca donne 0(std in),1(std out) et 2(std err).  


 
ouai mais donc si je write sur 1 ca devrai m'afficher kk chose :/
 
 
mon write et bon mais ca marche pas
c mon freebsd qui trip ?
 


---------------
"-Dites 33. -Export!!" [:nokbilong]
n°277127
schnapsman​n
Zaford Beeblefect
Posté le 29-12-2002 à 15:22:36  profilanswer
 

Nokbilong a écrit :

char var = 'a';
write(1, &var, 1);
 
 
et ca write rien :/
comme si c'etait pas 1 ld fd de la sortie std
mais j'ai rien touché :/
 
c sous un freebsd
 
kk1 a une idée?


 
je me rappelle ca y est  :D  
 
La sortie standard est bufferisée, il faut écrire suffisament d'octets dessus (sans doute 512 cf le #define BUFSIZ) pour quelle soit "flushée". Sinon tu peux écrire un retour chariot ca devrait flusher immédiatement (là j'ai un doute).
 
 
essaye avec write(2 ... sur la sortie erreur il n'y a pas de buffer ca devrait marcher.


Message édité par schnapsmann le 29-12-2002 à 15:23:56

---------------
From now on, you will speak only when spoken to, and the first and last words out of your filthy sewers will be "Sir!"
n°277128
Nokbilong
unique, comme tout le monde.
Posté le 29-12-2002 à 15:28:59  profilanswer
 

schnapsmann a écrit :


 
je me rappelle ca y est  :D  
 
La sortie standard est bufferisée, il faut écrire suffisament d'octets dessus (sans doute 512 cf le #define BUFSIZ) pour quelle soit "flushée". Sinon tu peux écrire un retour chariot ca devrait flusher immédiatement (là j'ai un doute).
 
 
essaye avec write(2 ... sur la sortie erreur il n'y a pas de buffer ca devrait marcher.


 
ok thx
vé test ca


---------------
"-Dites 33. -Export!!" [:nokbilong]
n°277130
HappyHarry
Posté le 29-12-2002 à 15:35:30  profilanswer
 

schnapsmann a écrit :


 
je me rappelle ca y est  :D  
 
La sortie standard est bufferisée, il faut écrire suffisament d'octets dessus (sans doute 512 cf le #define BUFSIZ) pour quelle soit "flushée". Sinon tu peux écrire un retour chariot ca devrait flusher immédiatement (là j'ai un doute).
 
 
essaye avec write(2 ... sur la sortie erreur il n'y a pas de buffer ca devrait marcher.


 
oué bon j'ai deja dit ... il peut faire un fflush aussi ...

n°277132
schnapsman​n
Zaford Beeblefect
Posté le 29-12-2002 à 15:38:53  profilanswer
 

HappyHarry a écrit :


 
oué bon j'ai deja dit ... il peut faire un fflush aussi ...


 
oué bon javé pas vu :)
 
pour virer la bufferisation il faut utiliser fcntl; mais alors bon courage pour la manpage de fcntl, elle est généralement toute cracra et regorge de trucs zarbis; rien d'impossible à comprendre néanmoins.


---------------
From now on, you will speak only when spoken to, and the first and last words out of your filthy sewers will be "Sir!"
n°277145
Nokbilong
unique, comme tout le monde.
Posté le 29-12-2002 à 16:00:35  profilanswer
 

HappyHarry a écrit :

fflush(1) et tu verras que ca marche tout de suite mieux
 
il me semble que l'affiche sur la sortie standard est bufferisée, ca n'est affiché que quand on arrive sur un caractere fin de ligne \n
 
autre solution : virer la bufferisation, mais ca je me souviens plus du nom de la fonction


 
 
 
j'avais pas vu :D


---------------
"-Dites 33. -Export!!" [:nokbilong]
n°277146
Nokbilong
unique, comme tout le monde.
Posté le 29-12-2002 à 16:02:52  profilanswer
 

au passage la sortie d'erreur semble bufurisée aussi
 
et si je write un \n c marche
 
 
 
bon
bah je vais lire la doc de fcntl  
 
 
thx tlm.


---------------
"-Dites 33. -Export!!" [:nokbilong]

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  question tres conne mais je vois pas la :/

 

Sujets relatifs
Question pour caractères d'un textboxje vois pas l'interet des interfaces dans un exo (en fin de topic)
bête questionquestion basique sur les .bat
question facile sur .writeEncore une petite question
[OPEN GL] question sur les listes d'objets...Question toute bete sur onclick --> lien
Question sur le W3Cquestion mysql :phpmyadmin ??
Plus de sujets relatifs à : question tres conne mais je vois pas la :/


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR