Я запутался, почему этот фрагмент кода возвращает ошибку сегментации.
Обычно я пытаюсь создать новый текстовый файл, используя fopen()
и fprintf()
.
void my_function() {
FILE *g;
char s1[30];
printf("\nNew file (text): ");
scanf("%s",&s1); //gets(s1);
g = fopen(s1,"w");
fprintf(g,"something");
fclose(g);
}
Я попытался проверить действительность fopen с помощью:
if (g == NULL) {
perror("fopen()");
exit(1);
}
, который возвращает fopen(): Bad address
, так что, вероятно, в этом проблема.
Есть идеи, что вызвало это и как это решить?