C 语言 数据库编程,查询语句:select 话语 where 条件匹配字符串

C 语言 数据库编程,查询语句:select 语句 where 条件匹配字符串
比方说:char name[]="~~~"
              char address[]="~~~~~~~";
 查询语句:select * from 表 where 姓名=name and 地址=address 怎么写???
使用的是数组名!!!
------解决方案--------------------
char querystring[1024];
sprintf(querystring, "select * from 表 where 姓名=\"%s\" and 地址=\"%s\" ", name, address);
------解决方案--------------------
引用:
Quote: 引用:

char querystring[1024];
sprintf(querystring, "select * from 表 where 姓名=\"%s\" and 地址=\"%s\" ", name, address);

为什么要加 \ 呢?这样写呢?
sprintf(querystring, "select * from 表 where 姓名= %s and 地址= %s", name, address);
这个\是转移字符表示其后的字符有特定意义,也就是加上这个以后生成的字符串里会用双引号包围姓名和地址字符串,不加\的话这个编译不通过,因为编译器将双引号当做区分字符串的功能了
------解决方案--------------------
select语句中的字符串用单引号而不是用双引号括住吧。
------解决方案--------------------
作为一个C程序员,对
 scanf,sscanf,fscanf
 printf,sprintf,fprintf
这类函数的用法,还是要做到“拳不离手,曲不离口”的。