注册 登录
编程论坛 C语言论坛

函数调用出错

wfx753951 发布于 2020-07-23 14:25, 2014 次点击
//C语言小白想问问各位这段代码错在哪里?拜托
void f(char *p)
{
    p=p+1;
}
int main()
{
    char s[]={"1","2","3","4"};
    f(s);
    printf("%c",*s);
    return 0;
}
4 回复
#2
lin51616782020-07-23 16:04
s是char数组
应该用char初始化每一个元素 备注或者可以转换为char的表达式
"1"不是char
#3
apull2020-07-24 10:50
单引号表示字符,'1','\0'
双引号""表示字符串,"1"其实是2个字符,包含{'1','\0'}

你这个f里面其实什么都没做,好好看看char* 和char[]的区别。
#4
wfx7539512020-07-24 17:16
回复 3楼 apull
好的,谢谢您
#5
wfx7539512020-07-24 17:17
回复 2楼 lin5161678
谢谢您
1