错误:二进制+ char*的操作数无效

Sam*_*ina -1 c char

可能重复:
C字符串连接

有以下代码:

        char *doencode(const unsigned char *input, int length)
        {
        //irrelevant code
        }

        char *fname, *lname;
        char *encoded, *name;

        name = fname + "|" + lname;
        encoded = doencode(name, 30);
Run Code Online (Sandbox Code Playgroud)

我得到这个错误:二进制+的操作数无效

如何组合fname和| &lname?

hmj*_*mjd 8

你不能连接char*char[]("|"或)使用的任何排列+.使用strncat()snprintf()替代并确保目标缓冲区有足够的内存来存储最终的字符串.