weatherforecast 2021-12-11 18:28 采纳率: 100%
浏览 37
已结题

请问这个关于指针数组的程序报错是什么意思

问题遇到的现象和发生背景

刚学指针数组

运行结果及报错内容

运行总是报错说 [Error] too many arguments to function 'char* comp()'
但是当我直接用 p=*(str+day)的时候就可以运行

我的解答思路和尝试过的方法

img

/*输出自己想要星期的英文*/
#include<stdio.h>
#include<string.h>
 char *str[8]={"Sunday","Monday","Tuesday","Wednesday" ,"Thursday","Friday","Saturday",NULL}; 
char *comp(char *table[],int day) //返回值为指针的函数 
{
return *(table+day);
}


int main(  )  
{  int day;
char string[10];
char *comp(),*p;
scanf("%d",&day);
   //p=*(str+day);
   p=comp(str, day); //调用函数,返回对应星期的字符串的首地址 
   printf("%s",p); //输出 
   
     return 0;  
 }

请问这是为什么?
  • 写回答

3条回答 默认 最新

  • 书山客 2021-12-11 18:32
    关注

    char *comp()
    这个不需要,把它拿掉

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月19日
  • 已采纳回答 12月11日
  • 创建了问题 12月11日