【发布时间】:2012-07-09 13:13:56
【问题描述】:
这是来自 295c 的问题之一
#include<stdio.h>
#include<string.h>
main()
{
char *a="kammo DJ";
const char *b="roomies!!";
char *c;
a=(char *)malloc(strlen(a) + strlen(b));
c=(char *)malloc(strlen(a) + strlen(b));
c=strcat(a,b);
printf("%s\n",a);
}
输出是 - 室友!! 但是为什么输出应该是kammo DJ + roomies的串联!! 也说说c的值是多少?
【问题讨论】:
-
strcat 的概要是 char *strcat(char *s1, const char *s2);
-
它应该是
int main(void)并且没有malloc的返回。