第1个回答 2011-09-24
因为strcat(a,b);要修改a指向的内存里的内容 而只需读取b所指向内存中的内容
char *a="fb";//a指向的"fb"是只读的 不能修改
char *b="fa";//这边也是只读的
如果改成
#include <iostream>
using namespace std;
int main()
{
char c[10]="fb";
char *a=c;
char *b="fa";
strcat(a,b);
printf("%s\n",a); //还有 这边输出字符串用的是指针 不要加*
cout<<strcmp(a,b);
}
第2个回答 2011-09-23
比如说你家住在 中国海洋大学 就相当于数组a,里面有3个人
a[2]={" you","your mother","your father"}
然后呢你家的门牌号是 山东青岛238号 (这个就相当于 a)
而*p=a
这个指针p呢就相当于 山东青岛238号这个门牌号。本回答被提问者采纳