Because wxString::Format doesn't have the '%q' functions which sqlite provides ;-)

At 21:30 25/10/2004, you wrote:

I assume you are using wxWidgets.. why don't you consider using the
specific functions for that purpose included in the wxString class?
wxString::Format and wxString::FormatV

Tiago


On Mon, 25 Oct 2004 20:43:31 +0200, Steven Van Ingelgem <[EMAIL PROTECTED]> wrote:
>  Hi,
>
>  I wanted to create my own "Format"-thingie, based upon my own database:
>
>  -----------------------------------------------------
>  Source
>  -----------------------------------------------------
>  wxString SQLite3_Db::Format( const wxString& format, ... )
>  {
>    va_list marker;
>    va_start(marker, format);
>   
>    char * t = sqlite3_vmprintf( format.mb_str(wxConvUTF8).data(), marker );
>
>    va_end(marker);
>
>    wxString retVal( t, wxConvUTF8 );
>
>    sqlite3_free( t );
>
>    return retVal;
>  }
>  -----------------------------------------------------
>
>  The problem here is that I get very weird results... Now tracing down, I
> found that in vxprintf (printf.c) "v = va_arg(ap,int);" is done (my first
> argument is %d).
>
>  Now what he gets there is the second parameter!
>

>  To be more clear:
>
>  SQLite3_Db::Format( "%d%s", 123, "Test" );
>
>  Then sqlite finds the first %d, tries to get the value of it, but finds the
> pointer pointing to 'Test'...
>

>
>  What did I do wrong?
>  Thx ;)
>


>
>  KaReL (aka Steven)
>
>  Main Webpage : http://www.karels0ft.be/
>  ICQ #        : 35217584

>


KaReL (aka Steven)

Main Webpage : http://www.karels0ft.be/
ICQ #        : 35217584

Attachment: pgpcrXoXZvKuj.pgp
Description: PGP signature

Reply via email to