我创建了一个C程序:

#include <stdio.h>
void user_connect( char user[], char date[]){
FILE* fichier=NULL;
fichier=fopen("log.txt","+a");
fprintf(fichier,"user:%s connected at :%s",user,date);
fclose(fichier);

}

void etat_periph( char periph[]){

FILE* fichier=NULL;
fichier=fopen("log.txt","+a");
fprintf(fichier,periph);
fclose(fichier);

}

int main()
{
    char user[]="user";
    char periph[]="led is on";
    char date[]="02/08/2015";

    user_connect(user,date);
    etat_periph(periph);
    return 0;
}

当我运行它时,我得到了这个错误消息“分段错误(核心转储)”
我试着调试它,但没有得到任何有价值的东西来解决它。

最佳答案

你应该把代码改成

fichier=fopen("log.txt","a+");

“+a”->“a+”

关于c - 运行C程序时核心转储,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31770667/

10-12 16:14