我是C的新手,我正在尝试复制字符串的上半部分,例如字符串是"让我们去商场"。我只想放置"让我们去"到一个新分配的指针,然后再与其他东西连接。有人可以建议我如何实现这个目标吗?
我在考虑这样的事情:
char *sample = "Let's go to the mall";
char *lower_half = " club and dance";
char *upper_half = malloc(sizeof(sample) + sizeof(lower_half));
strcpy(upper_half,sample); <<<<------- How can i copy the "Let's go to the"?
strcat(upper_half,lower_half);
printf("String:%s\n",upper_half);
然后结果将是&#34;让我们去俱乐部跳舞&#34;。
我也不确定我对upper_half的分配是否正确。它太大了吗?
答案 0 :(得分:0)
尝试:
strncpy(upper_half,sample,15); // with last parameter, number of char to copy.
strcat(upper_half,lower_half);