c语言原生数据类型长度探讨
2011-05-31 20:54
344 查看
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf ("sizeof(int)=%d/n",sizeof(int));
printf ("sizeof(short)=%d/n",sizeof(short));
printf ("sizeof(long)=%d/n",sizeof(long));
printf ("sizeof(long long)=%d/n",sizeof(long long));
printf ("sizeof(float)=%d/n",sizeof(float));
printf ("sizeof(double)=%d/n",sizeof(double));
printf ("sizeof(long double)=%d/n",sizeof(long double));
system ("pause");
return 0;
}
运行这一段代码的结果是
课本上说的是
float->%f, double->%lf ,long double->%Lf
但我觉得,现在的一些编译器基本忽略了这个细节。(或者是没有提示警告)
之后,再扩充一些东西吧。
对于整形常量
u或U 表示 unsigned
l 或L 表示 long
ul 或UL 表示 unsigned long
ll 或LL 表示 long long
ull 或ULL 表示 unsigned long long
对于浮点常量
f或F表示 float
l或L 表示 long double
然后你再看一下这段代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf ("sizeof(11)=%d/n",sizeof(11));
printf ("sizeof(11u)=%d/n",sizeof(11u));
printf ("sizeof(11l)=%d/n",sizeof(11l));
printf ("sizeof(11ul)=%d/n",sizeof(11ul));
printf ("sizeof(11ll)=%d/n",sizeof(11ll));
printf ("sizeof(11ull)=%d/n",sizeof(11ull));
printf ("sizeof(11.0)=%d/n",sizeof(11.0));
printf ("sizeof(11.0f)=%d/n",sizeof(11.0f));
printf ("sizeof(11.0l)=%d/n",sizeof(11.0l));
system ("pause");
return 0;
}
上面那个结果可以看出 11 默认是 int sizeof=4;
11.0 默认是 double sizeof=8;
#include <stdlib.h>
int main()
{
printf ("sizeof(int)=%d/n",sizeof(int));
printf ("sizeof(short)=%d/n",sizeof(short));
printf ("sizeof(long)=%d/n",sizeof(long));
printf ("sizeof(long long)=%d/n",sizeof(long long));
printf ("sizeof(float)=%d/n",sizeof(float));
printf ("sizeof(double)=%d/n",sizeof(double));
printf ("sizeof(long double)=%d/n",sizeof(long double));
system ("pause");
return 0;
}
运行这一段代码的结果是
课本上说的是
float->%f, double->%lf ,long double->%Lf
但我觉得,现在的一些编译器基本忽略了这个细节。(或者是没有提示警告)
之后,再扩充一些东西吧。
对于整形常量
u或U 表示 unsigned
l 或L 表示 long
ul 或UL 表示 unsigned long
ll 或LL 表示 long long
ull 或ULL 表示 unsigned long long
对于浮点常量
f或F表示 float
l或L 表示 long double
然后你再看一下这段代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf ("sizeof(11)=%d/n",sizeof(11));
printf ("sizeof(11u)=%d/n",sizeof(11u));
printf ("sizeof(11l)=%d/n",sizeof(11l));
printf ("sizeof(11ul)=%d/n",sizeof(11ul));
printf ("sizeof(11ll)=%d/n",sizeof(11ll));
printf ("sizeof(11ull)=%d/n",sizeof(11ull));
printf ("sizeof(11.0)=%d/n",sizeof(11.0));
printf ("sizeof(11.0f)=%d/n",sizeof(11.0f));
printf ("sizeof(11.0l)=%d/n",sizeof(11.0l));
system ("pause");
return 0;
}
上面那个结果可以看出 11 默认是 int sizeof=4;
11.0 默认是 double sizeof=8;
相关文章推荐
- 在32、64位系统、C语言基本数据类型的长度。
- c语言中各种数据类型的长度
- C语言基本数据类型的长度和取值范围
- 数据类型长度运算符c语言中的
- c语言==测量各种数据类型的长度以及typedf关键字对数据类型的作用
- [置顶] C语言中各种数据类型的长度 sizeof char, short, int, long, long long
- C语言中各种数据类型的长度,long型是多少字节
- C语言全局变量初始化、数据类型长度
- C语言中各种数据类型长度的总结(转)
- C语言各种数据类型的长度是个问题
- c语言中各种数据类型的长度
- C语言中各种数据类型长度的总结
- C语言中各种数据类型长度
- c语言中的数据类型和长度
- C语言基本数据类型的长度
- C语言中各种数据类型的长度 sizeof char, short, int, long, long long
- C语言中各种数据类型长度
- C语言中32位和64位的数据类型长度
- C语言中数据类型及长度
- C语言中各种数据类型长度的总结:(参考The C Programming Language)