我願意訪問存在於coloumn的特定元素在我的SQLite數據庫,所以爲了達到這一點,我已經使用了select語句例外使用SQLite select語句拋出
char *query = {0};
strcat(query, "SELECT ");//exception thrown here
strcat(query, (char*)arr);//The value to be asscessed
strcat(query, " FROM CARS");
但這拋出異常在ucrtbased.dll中爲什麼?
更新
我已經提到這個答案here並試圖此,char* line1 = "SELECT "; char* line2 = (char*)arr; char* line3 = " FROM CARS"; size_t len1 = strlen(line1); size_t len2 = strlen(line2); size_t len3 = strlen(line3); char *query = (char*)malloc(len1 + len2 + len3 + 1); if (!query) abort(); memcpy(query, line1, len1); memcpy(query + len1, line2, len2); query[len1 + len2 + len3] = '\0';
,但我發現,我做錯了什麼(因爲出放跳到else語句,這意味着無效sqlite的聲明)我無法弄清楚它是否會幫助我。
我還提到本教程@ cplusplus.com但無法弄清楚 謝謝
那麼,我應該使用malloc?爲查詢變量?謝謝 – user105127
@ user105127:已更新的答案。 – Naveen
會不會更好使用'std :: string',然後用'.c_str()'吐出一個char *?您避免分配內存,釋放內存,並獲得更簡單的級聯來引導。 – enhzflep