c语言程序报错 16 12[Error] invalid conversion from 'const char*' to 'char' [-fpermissive]

#include <stdio.h>

int replace(char *str,int strsize){
int blanknum;
char *p;
p = str;
while(*p != '\0'){
if (*p == ' '){
blanknum++;
}
}

int len = strsize + 2 * blanknum;
for (int i = strsize; i>=0; i--){
if (str[i] == ' '){
str[len]= "0";
len--;
str[len] = "2";
len--;
str[len] = "%";
len--;
}else{
str[len] = str[i];
len--;
}
}
}
int main(){
char str[10] = "a b c";
replace(str, 5);
for (int i = 0;i<10;i++){
printf("%c",str[i]);
}
}

第1个回答  2018-12-03
#include <stdio.h>
int replace(char *str,int strsize){
int blanknum;
char *p;
p = str;
while(*p != '\0'){
if (*p == ' '){
blanknum++;
}
}
int len = strsize + 2 * blanknum;
for (int i = strsize; i>=0; i--){
if (str[i] == ' '){
str[len]= '0';
len--;
str[len] = '2';
len--;
str[len] = '%';
len--;
}else{
str[len] = str[i];
len--;
}
}
}
int main(){
char str[10] = "a b c";
replace(str, 5);
for (int i = 0;i<10;i++){
printf("%c",str[i]);
}
}
char 类型赋值用' ' 不是" "
第2个回答  2017-02-28
从错误的提示来看,你是要把数组或者指针转换成字符来用了,而函数本身要求的参数类型是字符,最好贴点代码上来,不要多,就是定义和调用的部分就行。
这种问题一般都是基本的小问题追问

贴代码上来了呀,您帮忙看一下

本回答被网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网