VC提示puts(geng(b));这里"char" 类型的实参和"const char*"类型的形参不兼容 求高手帮忙解释并解决
发布网友
发布时间:2022-05-13 17:58
我来回答
共1个回答
热心网友
时间:2023-10-19 08:26
对于非常量作为常量传递参数是可以的,但是常量最为非常量参数传递是不行的
所以你这里不是什么const的问题
你要看看puts()函数的参数,是个const char*类型,const是确保指针的安全性的,你这里可以不用理他,但是 char * 是一个字符串,但是你传递给他的是一个char就是一个字符,这里应该是一个字符串的地址啊
改成下面的就行了
#include<stdio.h>
#include<string.h>
char* geng(char a[])
{
char t;
int i;
for(i=strlen(a)-1;i>=strlen(a)/2;i--)
{
t=a[strlen(a)-1-i];
a[strlen(a)-1-i]=a[i];
a[i]=t;
}
return a;
}
void main()
{
char b[20];
gets(b);
puts(geng(b));
}