views:

114

answers:

1

I am coding in c++ windows.

INT64 dirID = -1;
CString querySQLStr = _T("");
querySQLStr.Format(L"select * from ImageInfo where FolderPath=%64d;", dirID);

querySQLStr always like this:
select * from ImageInfo where FolderPath=                                                            1214;

is it right to use %64d? Many Thanks

+2  A: 

I don't have a windows machine handy to test this on, but I think CString should accept this:

querySQLStr.Format("%I64d", dirID);

It's probably worth noting that this is windows specific, but since you're using CString I guess that's okay.

ryan_s
I can confirm it does work. %lld (two lowercase Ls) will also work, the 'll' referring to LONGLONG, which (under Win32 at least) is typedefed as _int64, as is INT64 (defined by different header files).
JTeagle