我需要用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的长度足以正确保存最终输出(连接字符串),则应该为您完成此项工作。

关于c - 从Sqlite追加带有记录集条目的字符串时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35519581/

10-11 22:58
查看更多