Message-ID: <39468EBA.6E8EB6B3@earthlink.net> From: Martin Ambuhl Organization: Nocturnal Aviation X-Mailer: Mozilla 4.73 [en] (Win95; U) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.os.msdos.djgpp Subject: Re: conversion specifier. References: <008501bfd532$7aee9380$de0f3acb AT default> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Lines: 38 Date: Tue, 13 Jun 2000 19:41:30 GMT NNTP-Posting-Host: 63.23.128.163 X-Complaints-To: abuse AT earthlink DOT net X-Trace: newsread2.prod.itd.earthlink.net 960925290 63.23.128.163 (Tue, 13 Jun 2000 12:41:30 PDT) NNTP-Posting-Date: Tue, 13 Jun 2000 12:41:30 PDT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Alastair Hogge wrote: > > My Code: > unsigned long foo; > printf("%d", foo); > > My compiler warnings: > ..warning: int format, long int arg (arg 2) > > What does this mean? Is it the "%i" thingy? It means that you are using an int specifier %d in the format string, while trying to print an unsigned long foo. > How can make that warning vanish? By 1) using the correct specifier printf("%lu", foo); or, not recommended, 2) Taking a chance on loss of information by downcastng foo: printf("%d", (int)foo); -- Martin Ambuhl mambuhl AT earthlink DOT net What one knows is, in youth, of little moment; they know enough who know how to learn. - Henry Adams A thick skin is a gift from God. - Konrad Adenauer