長寿の秘訣(抽象画)

 何秒生きられる?(カスタムああ)

10^{7}( 1年で約3.156×秒あります)

 10*10*10*10 で計算するのは面倒です...

ヘッダー ファイル #include<math.h> がここで呼び出されます

pow(x,y) 関数     (x は底、y は指数)

#include <stdio.h>
#include<math.h>

int main() 
{
  int age;
  int a = pow(10,7);     //pow()函数调用了头文件#include<math.h>
  scanf("%d",&age);
  long age1 = age*3.156*a;    //若定义age1为int  会出现溢出
  printf("%ld",age1);
    return 0;
}

age1 を int で定義するとどうなりますか?

次のように、オーバーフローが発生します

では、age1 を long long で定義するとどうなるでしょうか?

明らかにage1をlong longで定義すると、出力はオーバーフローしません

知らせ!プレースホルダー%ld はlong 型の出力に使用されます. プレースホルダー%ld はlong long 型の出力に使用されます。   

なぜロングタイプを使わないのですか?

long 型が int 型と同じメモリを占有していることがわかります。どちらも 4 バイトです。

int は 4 バイトまたは 32 ビット (ビット) を占有します

値の範囲は -2147483648~2147483647 ( -2^{31} \sim 2^{31}-1)

実はC言語標準では   

あり sizeof(long)>=sizeof(int)

そして、long long 型は 8 バイトを占有し、明らかにオーバーフローしません

まとめ:ロングロングタイプのように、大らかで楽観的で開放的な姿勢を保てば、長寿はもはや秘密ではありません

おすすめ

転載: blog.csdn.net/Jay_0824/article/details/129963953