c语言,关于strcat的用法

为什么出错了

p=(char *)malloc(sizeof(char)*20);
strcpy(p, "sing");
strcat(p, q);

追问

不管加不加这个p赋值的都不对额,,

追答#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    char *p;
    const char* q="ding";
    p=(char*)malloc(sizeof(char)*20);
    strcpy(p, "sing");
    strcat(p, q);
    puts(p);
    free(p);
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
相似回答