作者pk873 (P.K)
看板NTUE-CS104
标题[程设] 变数储存大小
时间Wed Nov 30 18:36:10 2011
先提一个基本观念
变数的资料型别会影响你所能存的最大与最小值
今天上课的时候
我一时忘没想到有一个函式可以知道传入值的空间大小
sizeof(x); //x的位置可以放变数 字串 数字
函式今天王老大才刚上 不会的请面壁思过 谢谢!!!
以下是我做的一个测试范例
#include<iostream>
using namespace std;
int main(void){
int integer_number=0;
float float_number=0;
double double_number=0;
long int long_int=0;
long long int long_long_int=0;
long double long_double=0;
//long long double long_long_double=0; //有注解的部分DEV C++ 才可编译
cout<<"int \t\t\t"<<sizeof(integer_number)*8<<"bits"<<endl;
cout<<"float \t\t\t"<<sizeof(float_number)*8<<"bits"<<endl;
cout<<"double \t\t\t"<<sizeof(double_number)*8<<"bits"<<endl;
cout<<"long int \t\t"<<sizeof(long_int)*8<<"bits"<<endl;
cout<<"long long int \t\t"<<sizeof(long_long_int)*8<<"bits"<<endl;
cout<<"long double \t\t"<<sizeof(long_double)*8<<"bits"<<endl;
//cout<<"long long double\t"<<sizeof(long_long_double)*8<<"bits"<<endl;
system("pause");
}
这支程式可以拿去编译看看
会输出你那台电脑 对於该资料型态的大小为多少bits
至於阶层会爆掉的部分 是因为overflow(超出有效的储存值域)
我应该不用赘述吧?? @@
--
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄
▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄无数次实验证明▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄
▄▄▄
▄▄▄▄▄▄▄▄▄▄ 机会是自己撞出来的 ▄▄▄▄▄▄▄▄
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄
▄▄
________ █████████████████████████
▌ █ ██▌
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 120.127.36.184
※ 编辑: pk873 来自: 120.127.36.184 (11/30 18:57)
1F:→ game0416:long long的问题吗-A- 11/30 19:16
2F:推 fonmon77:帅唷! 谢谢PK学长 11/30 21:42
3F:推 jeff8231:谢瞜学长~ 12/01 02:08
4F:→ pk873:没拉 就今天有人在测阶层输入多少时会爆就是了 12/01 03:20