我需要附加一个带有 sqlite 记录集列条目的字符串,我用这个
char a[16]=(unsigned char *)"Name: "+(unsigned char *)rs.recordset[0][1];
但是我一直收到此错误。
错误:二进制
+
的操作数无效
我做错了什么?
在 C 中,+
符号不连接字符串。
根据C11
标准第 §6.5.6 章,添加剂运算符
对于加法,两个操作数都应具有算术类型,或者一个操作数应为 指向完整对象类型的指针,另一个应具有整数类型。[..]
因此,+
不会连接两个字符串。
您需要使用 strcat()
来连接两个字符串。
类似的东西
char a[16] = {0};
strcat(a, "name");
strcat(a, rs.recordset[0][1] );
应该为您完成这项工作,前提是a
的长度足以正确保存最终输出(串联字符串)。
@
sourav,你需要复制"name",
char a[16]=0;
strcpy(a,"name");
strcat(a, rs.recordset[0][1]);