将两个整数连接成C中的char*

sam*_*ara 2 c int concat string-concatenation char

现在已经忘记了我的C知识,很难搞清楚如何做到以下几点:

int a = 5; //getting value from a function
int b = 1; //from a function
Run Code Online (Sandbox Code Playgroud)

我想要的是:

char * returnstring = "5:1"; //want to return this
Run Code Online (Sandbox Code Playgroud)

我尝试了以下但它不起作用.

    char astr[5], bstr[5];
    sprintf( astr, "%d", a);
    sprintf( bstr, "%d", b);

    char finstr[100]; //final string
    strcpy(finstr, astr);
    strcpy(finstr, ":");
    strcpy(finstr, bstr);

    printf ("%s", finstr);
Run Code Online (Sandbox Code Playgroud)

flu*_*ter 6

你可以用一个sprintf:

char str[100];
sprintf(str, "%d:%d", a, b);
Run Code Online (Sandbox Code Playgroud)