c语言 - 无法解决隔离错误错误



这并不是全部程序,但是它不会超越此功能。它似乎在FSCANF语句附近有Segfault,但我认为这不是导致错误的原因。我真的看不到任何可能导致segfault错误的东西,但是我是业余爱好者,可能错过了一些东西。所有printf语句都是用于调试目的。

#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#define N 10  
struct point2d_def
{
    int x;
    int y;
};
typedef struct point2d_def point2d;
void fill(char str[], point2d P[])
{
    FILE *ifp = NULL;
    ifp = fopen(str, "r");
    int i = 0;
    if (ifp == NULL)
    {
        printf("Could not open %s for readingn", ifp);
        exit(1);
    }
    for(i = 0; i < N; ++i)
    {
        fscanf(ifp, "%d %d", &P[i].x, &P[i].y);
    }
    fclose(ifp);
    printf("Fill function passedn");
    return;
    printf("Blorp");
}

首先,您在func内声明P[N],并在参数中接收P

第二,您正在写入11个插槽,而不是10个插槽:

for(i = 0; i < N; ++i){
    fscanf(ifp, "%d %d", &P[i].x, &P[i].y);
}

删除= ...

相关内容

  • 没有找到相关文章

最新更新