2016-07-10 74 views
-1

当我编译这段代码,我得到的错误从 '诠释' 到 'FILE *' 无效转换

**[Error] invalid conversion from 'int' to 'FILE* {aka _iobuf*}' [-fpermissive]** 

代码:打印的字符

int yazi; 
FILE *dosya; 
char *girdi = (char*) malloc(sizeof(char)*500); 

void cikiskayit() 
{ 
    HWND pencere; 
    pencere = NULL; 

    int mesajkutu = MessageBox(
     pencere, 
     "Yazıyı kaydetmek istermisiniz ?", 
     "Kayıt ?", 
     MB_ICONEXCLAMATION | MB_YESNO); 

    if (mesajkutu == 1) 
    { 
     dosya = fprintf(dosya,girdi); // error's source line 
    } 
    else if(mesajkutu == 2) 
    { 
     fclose(dosya); 
    } 
} 
+1

你可以加强代码,并提供更多的细节,你如何编译它(编译器,标志等)?一个完整的,可编辑的例子对于人们来说更容易回答。谢谢! –

回答

1

fprintf中返回数字。出于某种原因,您试图将其分配给类型为FILE *的变量。这是不允许的。

如果没有有意义的变量名称或评论,我无法真正帮助您超越这一点 - 我不知道如何为您解决这个问题。我怀疑你只是想放弃作业部分,只打电话给printf

相关问题