From owner-freebsd-questions@FreeBSD.ORG Sat Jun 21 03:13:01 2003 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4266137B401 for ; Sat, 21 Jun 2003 03:13:01 -0700 (PDT) Received: from ai1.anchorage.mtaonline.net (ai1.anchorage.mtaonline.net [12.17.140.247]) by mx1.FreeBSD.org (Postfix) with ESMTP id D1B4B43FAF for ; Sat, 21 Jun 2003 03:12:59 -0700 (PDT) (envelope-from abc@ai1.anchorage.mtaonline.net) Received: from en26.ai1.anchorage.mtaonline.net (root@printer [192.168.0.26]) h5LACs1d039217 for ; Sat, 21 Jun 2003 02:12:55 -0800 (AKDT) (envelope-from abc@ai1.anchorage.mtaonline.net) Received: (from abc@localhost)h5LAECvr038054; Sat, 21 Jun 2003 10:14:12 GMT (envelope-from abc@ai1.anchorage.mtaonline.net) Date: Sat, 21 Jun 2003 10:14:12 GMT From: abc@ai1.anchorage.mtaonline.net Message-Id: <200306211014.h5LAECvr038054@en26.ai1.anchorage.mtaonline.net> X-Authentication-Warning: en26.ai1.anchorage.mtaonline.net: abc set sender to abc@ai1.anchorage.mtaonline.net using -f To: "freebsd-questions" X-Mailer: Umail v2.9.4 Subject: is this a FBSD printf bug? X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Jun 2003 10:13:01 -0000 FBSD 4.8 i hope this isn't a question based on extreme ignorance - i haven't programmed in C in a long time, and i don't have another machine to test this on. i can't understand why the output of the following code produces "ints" when given variables of type "char", so it looks like a bug to me ... #include /////////////////////////////////////////////////////////////////////////////// int main(int argc, char *argv[]) { #define LEN_ARRAY 16 char a[LEN_ARRAY+1]; int i; a[0]=0x00; a[1]=0x11; a[2]=0x22; a[3]=0x33; a[4]=0x44; a[5]=0x55; a[6]=0x66; a[7]=0x77; a[8]=0x88; a[9]=0x99; a[10]=0xaa; a[11]=0xbb; a[12]=0xcc; a[13]=0xdd; a[14]=0xee; a[15]=0xff; for ( i = 0; i < LEN_ARRAY; ++i ) printf("[%02i]%02x\n", i, a[i]); } /////////////////////////////////////////////////////////////////////////////// // // OUTPUT: // // [00]00 // [01]11 // [02]22 // [03]33 // [04]44 // [05]55 // [06]66 // [07]77 // [08]ffffff88 ??? // [09]ffffff99 ??? // [10]ffffffaa ??? // [11]ffffffbb ??? // [12]ffffffcc ??? // [13]ffffffdd ??? // [14]ffffffee ??? // [15]ffffffff ???