On Jun 1, 2010, at 10:10 PM, Ian Schorr wrote:

> As you mention later, MS Visual Studio 2008 does not include those
> macros.  From the sounds of it, regardless of my exact problem (which
> I'm guessing is in this general area anyway), I'm probably better off
> abandoning sprintf altogether?

If you have guint32 and guint64 as types, you're presumably using GLib, in 
which case you have GStrings:

        http://library.gnome.org/devel/glib/stable/glib-Strings.html

which means you can allocate a GString, use g_string_printf() to initially 
format it, and use g_string_append_printf() to format and append to it; there 
aren't any worries about overflowing it, as it grows as necessary, or about 
conveniently appending to it.

If you use that, you'd use G_GINT64_MODIFIER in the format, e.g.

        GString *string;
        guint64 longlong;

                ...

        g_string_printf(string, "longlong = " G_GINT64_MODIFIER "u", longlong);

That's available on all platforms, so you don't have to worry about whether the 
platform has the PRI[douxX]64 macros or not.
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev@wireshark.org>
Archives:    http://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-requ...@wireshark.org?subject=unsubscribe

Reply via email to