Reamte
2016-03-07 09:14
采纳率: 100%
浏览 2.3k
已采纳

c语言 指针数组作为函数参数问题

 #include<stdio.h>
#include<stdlib.h>



void init_rec(day_record *arr[],FILE *file)
{
    char temp[80];
    int index=0;
    while((fscanf(file,"%s",temp))!=EOF)
    {
        arr[index]=NULL;
        arr[index]=(day_record * )malloc(sizeof(day_record));
        if(arr[index]==NULL)
        {
            printf("结构地址分配错误\n");
            exit(1);
        }
        replace(',',' ',temp);
        inputrc(arr[index],temp);
        index++;
    }

}

在gcc中编译 总是提示错误发生在void init_rec(day_record arr[],FILE *file)这一行

*
错误内容是 pay.c:6: 错误:expected ‘)’ before ‘*’ token **

结构体是这么写的

 //每日记录临时存储结构
typedef struct day_record
{
    int worker_nu;
    char date[DATE_LEN];
    char * loca;
    int work_nu;
    char * worker[WORK_LEN];
} day_record;

调用是这样的

#include<stdio.h>
#include<stdlib.h>
#include"pay.h"
#include"pay.c"


int main()
{
    FILE * fp;
    day_record * record[31];
    fp = fopen("pay","r");
    if(fp==NULL)
    {
        printf("open failed\n");
        exit(1);
    }

    init_rec(record,fp);
    putdr(record[0]);
    fclose(fp);
    return 0;
} 

想不明白是怎么回事 求指教 谢谢大家

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

6条回答 默认 最新

  • dujie4752041 2016-03-07 09:57
    最佳回答

    我刚用 VC 编译一下是可以过的,并且能够运行。重新 REBUILID 一下吧

    评论
    解决 无用
    打赏 举报
查看更多回答(5条)

相关推荐 更多相似问题