J'essaye d'écrire une sortie vers un bash fifo pour que je puisse l'envoyer dans un autre programme. Cependant, dès que je l'exécute, j'obtiens une erreur de segmentation . Des pensées? (C amateur ici)Comment écrire correctement à un bash fifo en C?
(errorout dans ce cas une variable globale et est appelé avec succès ailleurs)
void print_log(){
printf("about to creat file pointer");
FILE* image_fifo;
printf("open fifo");
image_fifo = fopen("image",O_WRONLY);
if(image_fifo == NULL){
printf("unable to open fifo");
}//end if
else{
printf("writing to fifo");
int j;
for(j=0;j<1024;j++){
fprintf(image_fifo,"%u",errorout[j]);
}//end for
}
fclose(image_fifo);
pour l'instant, le lire à l'aide de ceci: (? Python est pas super)
with open("image","r") as f:
print(f.read())
Avez-vous une autre sortie en plus de la segfault? – mgarey
Qu'est-ce qu'un 'bash fifo'? En quoi est-ce différent d'un fifo régulier? –
'fopen (" image ", O_WRONLY);' est faux. 'fopen' prend un char * pour son second argument. –