vine-users ML アーカイブ



[vine-users:057042] Re: long double の printf

  • From: K Hanai <hanai@xxxxxxxxxxxxxxxx>
  • Subject: [vine-users:057042] Re: long double の printf
  • Date: Thu, 19 Dec 2002 09:39:58 +0900 (JST)
花井@京都です.

From: ANDO Koji <ando@xxxxxxxxxx>
>  ちなみに Windows 2000 + VisualStudio6.0 + SP5 では
>  L をつけなくても正しい値を表示します。

L を付けなくてもいい ppc と alpha で次のような size_of_test というのを
走らせてみました.

#include <stdio.h>
int main(void)
{
  printf("    型          バイト\n");
  printf("short int型:%10d\n", sizeof(short int));
  printf("      int型:%10d\n", sizeof(int));
  printf(" long int型:%10d\n", sizeof(long int));
  printf("    float型:%10d\n", sizeof(float));
  printf("   double型:%10d\n", sizeof(double));
  printf("long double型:%8d\n", sizeof(long double));
         return 0;
}

すると,x86 機では
$ ./size_of_test
    型          バイト
short int型:         2
      int型:         4
 long int型:         4
    float型:         4
   double型:         8
long double型:      12

となりましたが,ppc や alpha では
$ ./size_of_test
    型          バイト
short int型:         2
      int型:         4
 long int型:         4
    float型:         4
   double型:         8
long double型:       8

で,long double は implement されてませんでした.
ppc$ rpm -q gcc
gcc-2.95.3-2vl22

alpha:~ > rpm -q gcc
gcc-2.96-4

です.