我想将char *
中的值更改为int并将声明为double,这样我就可以在不触及char * sql的情况下更改它们。
(在使用C的ubuntu上)
我该怎么做?
代码:
int sensor_id = 10;
double temp = 22.22;
char *sql = "INSERT INTO test_table(sensor_id, sensor_value) VALUES(10, 22.22)";
答案 0 :(得分:2)
试试这个(脏,没有错误检查,可能会发生缓冲区溢出):
const char *sqlformat =
"INSERT INTO test_table(sensor_id, sensor_value) VALUES(%d, %f)";
char sql[200];
sprintf(sql, sensor_id, temp);
现在,您可以在sql
缓冲区中找到所需内容。
这是非常基本的C语言,我建议你学习C语言。