본문 바로가기
728x90

언어/C++4

sqlite3 테이블 확인 bool MySqlite::CheckTable(std::string tableName) { sqlite3_stmt* stmt; char query[1024] = ""; std::string tableSql = "SELECT name FROM sqlite_master WHERE name = '%s';"; sprintf(query, tableSql.c_str(), tableName.c_str()); bool result = false; sqlite3_prepare_v2(this->db, query, -1, &stmt, NULL); if (sqlite3_step(stmt) == SQLITE_ROW) { result = true; } sqlite3_reset(stmt); sqlite3_finalize(stmt).. 2021. 4. 12.
c++ sqlite ' 포함된 문자열 insert시 쿼리 변환 sqlite ' 포함된 문자열(i'm fine) insert시 에러가 발생함으로 변환 필요 std::string StrConvert::ReplaceAll(std::string& str, const std::string& from, const std::string& to) { size_t start_pos = 0; //string처음부터 검사 while ((start_pos = str.find(from, start_pos)) != std::string::npos) //from을 찾을 수 없을 때까지 { str.replace(start_pos, from.length(), to); start_pos += to.length(); // 중복검사를 피하고 from.length() > to.length()인 경우를 .. 2021. 4. 8.
C++ UTF-16 formatstring 하기(swprintf 함수 사용) sqlite3* db; wchar_t* err_wmsg = 0; wchar_t query[1024] = L""; std::wstring filePath = L"C:/Users/apple/Downloads/sqlite_unicode (2)"; swprintf(query, L"INSERT INTO MFTpath VALUES(%d, '%s');", 1, filePath.c_str()); rc = sqlite3_exec16(db, query, 0, 0, &err_wmsg); if (rc != SQLITE_OK) { fprintf(stderr, "SQL error: %s\n", err_wmsg); sqlite3_free(err_wmsg); sqlite3_close(db); return 1; } sqlite3_ex.. 2021. 3. 12.
C++ 시간 계산 void main() { clock_t start, end; start =clock(); double result; /* 내가 작성한 코드 */ result = (double)(end - start)/CLOCKS_PER_SEC; printf("%f", result); } 2021. 3. 11.
728x90