char *val1 = "/root";
char *val2 = "/p";
val1 = val1+val2;
我想添加2个char指针值并将其指定给第1个值。上面是代码snippt。
答案 0 :(得分:5)
不可能那样做。由于你有两个指针,尝试添加它们会尝试自己添加指针,而不是操纵它们所指向的指针。要连接这两个字符串,您需要/分配一个足够大的缓冲区来容纳两个字符串:
char *both = malloc(strlen(val1) + strlen(val2) + 1);
if (both != NULL) {
strcpy(both, val1);
strcat(both, val2);
}
答案 1 :(得分:2)
使用strcat
或strncat
函数来连接字符串。 C没有字符串连接运算符。