为了账号安全,请及时绑定邮箱和手机立即绑定

c语言中指针问题

c语言中指针问题

C
lzjccc 2016-03-22 22:24:37
#include<stdio.h> void Swap(char*r,char*s){ char p; p=*r; *r=*s; *s=p; } main(){ char*s1="abc"; char*s2="123"; Swap(s1,s2); printf("%c,%c",*s1,*s2); }以上代码执行不了,请问哪位大神能帮我解决?谢了!
查看完整描述

1 回答

已采纳
?
onemoo

TA贡献883条经验 获得超454个赞

普通char指针是不能指向常量字符串的,并且因为“abc”“123”是常量字符串,也不能被修改。

要想操作字符串,就应该给它们分配实际的存储空间,所以应把 s1 和 s2 声明为字符数组:

char s1[] = "abc";
char s2[] = "123";



查看完整回答
1 反对 回复 2016-03-22
  • 1 回答
  • 1 关注
  • 1432 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信