MySQLデータベースのデータにアクセスするためにcおよびc++言語を使用するプログラムがあります。コード:
const char *query="SELECT * FROM myTable;";
printf("%s\n",query);
state=mysql_query(sock,query);
printf("%s\n",query);
そのコードから、'state'ステートメントの前後のクエリ値は同じです(SELECT * FROM myTable;)。しかし、このコードの場合:
const char *query=getQuery();
printf("%s\n",query);
state=mysql_query(sock,query);
printf("%s\n",query);
関数:
const char * getQuery(){
const char *returnValue;
char q[BUFSIZ];
sprintf_s(q,"%s","SELECT * FROM myTable;");
returnValue=q;
return returnValue;
}
このコードから、 "state"ステートメントの前後のクエリ値は同じではありません。before(SELECT * FROM myTable;)とafter(1/4> -uC ^ M)です。
誰か知ってる?
前もって感謝します。