【发布时间】:2011-01-27 09:17:07
【问题描述】:
我有功能:
char *zap(char *ar) {
char pie[100] = "INSERT INTO test (nazwa, liczba) VALUES ('nowy wpis', '";
char dru[] = "' )";
strcat(pie, ar);
strcat(pie, dru);
return pie;
}
主要有:
printf("%s", zap( argv[1] ) );
编译时出现警告:
test.c: In function ‘zap’:
test.c:17: warning: function returns address of local variable
我应该如何正确返回 char*?
【问题讨论】:
-
您似乎正在与数据库进行交互。你必须使用纯C吗?此外,大多数数据库都有 API 来安全地构造 SQL 语句。你能用这些吗?
-
谢谢,是的 - 我使用 MySQL C API,但我必须创建一个字符串用作查询,因为我不能在查询本身中使用变量。