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

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条)

报告相同问题?

悬赏问题

  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制