bug in lrint [was: FW: Printing long int in C program under cygwin64]
Steven Penny
svnpenn@gmail.com
Thu May 25 01:31:00 GMT 2017
On Wed, 24 May 2017 07:33:27, Eric Blake wrote:
> Buggy. size_t should be printed with %zi, not %i (since size_t and int
> are not necessarily the same type).
Arenât both wrong? By definition %i is a signed integer, and size_t is unsigned.
So %zu or %llu would be more correct:
http://wikipedia.org/wiki/C_data_types
They all seem to do the job though:
$ cat alfa.c
#define __USE_MINGW_ANSI_STDIO 1
#include <stdio.h>
int main() {
size_t bravo = 1;
printf("%zi %zu %llu\n", bravo, bravo, bravo);
}
$ x86_64-w64-mingw32-gcc -o alfa alfa.c
$ ./alfa
1 1 1
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
More information about the Cygwin
mailing list