gpt4 book ai didi

c - 从参数为 4 的 c 函数返回一个字符串

转载 作者:太空宇宙 更新时间:2023-11-04 08:11:46 24 4
gpt4 key购买 nike

请看下面的代码

#include<stdio.h>
char* day(int);
int main()
{
int num;
char *p;
printf("Enter the day \n");
scanf("%d",&num);
p=day(num);
printf("%s",*p);
return 0;
}

char *day(int num)
{
char *str;
switch(num)
{
case 1: *str="MONDAY";
break;
case 2: *str="TUESDAY";
break;
case 3: *str="WEDNESDAY";
break;
case 4: *str="THURSDAY";
break;
case 5: *str="FRIDAY";
break;
case 6: *str="SATURDAY";
break;
case 7: *str="SUNDAY";
break;
}
return str;
}

我试图在上面的程序中打印一周中的几天为了实现这个我创建了一个函数 day() 它将接受来自用户的数字并返回日期的地址但是上面的程序不工作。我不知道是什么问题。谁能帮我解决这个问题?

最佳答案

在 day 函数中从 str 中删除 '*',因为您正在通过指针分配内容

通过Basic Pointer Operations指针基础知识。

 #include<stdio.h>


char* day(int);
int main()
{
int num;
char *p;
printf("Enter the day \n");
scanf("%d",&num);
p=day(5);
printf("%s",p);
return 0;
}

char* day(int num)
{
char* str;
switch(num)
{
case 1: str="MONDAY";
break;
case 2: str="TUESDAY";
break;
case 3: str="WEDNESDAY";
break;
case 4: str="THURSDAY";
break;
case 5: str="FRIDAY";
break;
case 6: str="SATURDAY";
break;
case 7: str="SUNDAY";
break;
}

return str;
}

我希望它对你有意义......

关于c - 从参数为 4 的 c 函数返回一个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38895847/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com