- 論壇徽章:
- 0
|
char stmt[MAXLINE]
/* memset(stmt,0,MAXLINE); */
strcat(stmt, "select * from ");
strcat(stmt, table);
如果不加memset, 打印出的stmt如下;
[root@datar12 ~]# gcc -I/usr/local/mysql/include -L/usr/local/mysql/lib -lmysqlclient mysql.c
[root@datar12 ~]# ./a.out
?select * from user
多了一個(gè)問(wèn)號(hào)。
如果使用了memset就沒(méi)問(wèn)題。
然后我又做了一個(gè)測(cè)試:
#include <stdio.h>
#include <string.h>
main()
{
char sql[1000];
char *table = "user";
strcat(sql, "select * from ");
strcat(sql, table);
printf("%s\n", sql);
}
[root@datar12 ~]# cc a.c
[root@datar12 ~]# ./a.out
select * from user
代碼其實(shí)都一樣,為什么上面的多了問(wèn)號(hào),下面的就沒(méi)有。 |
|