#include <stdio.h>

void f0(void)
{
printf("in linux:\n");
printf("sizeof(char) = %d\n", sizeof(char));
printf("sizeof(int) = %d\n", sizeof(int));
printf("sizeof(short int) = %d\n", sizeof(short int));
printf("sizeof(long int) = %d\n", sizeof(long int)); printf("sizeof(float) = %d\n", sizeof(float)); printf("sizeof(double) = %d\n", sizeof(double));
printf("sizeof(long double) = %d\n", sizeof(long double)); } void f1(void)
{
int i = 1;
unsigned int ui = 1;
char c = 1;
unsigned char uc = 1;
short int si = 1;
unsigned short int usi = 1;
float f = 1;
double d = 1;
long double ld = 1; printf("for 1, i = %x, ui = %x\n", i, ui);
printf("for 1, c = %x, uc = %x\n", c, uc);
printf("for 1, si = %x, usi = %x\n", si, usi);
printf("for 1, f = %x\n", f);
printf("for 1, d = %x\n", d);
printf("for 1, ld = %x\n", ld); }
void f2()
{
int i = -1;
unsigned int ui = -1;
char c = -1;
unsigned char uc = -1;
short int si = -1;
unsigned short int usi = -1;
float f = -1;
double d = -1;
long double ld = -1; printf("for -1, i = %x, ui = %x\n", i, ui);
printf("for -1, c = %x, uc = %x\n", c, uc);
printf("for -1, si = %x, usi = %x\n", si, usi);
printf("for -1, f = %x\n", f);
printf("for -1, d = %x\n", d);
printf("for -1, ld = %x\n", ld); c = -255;
uc = -255;
printf("for -255, c = %x, uc = %x\n", c, uc); c = -128;
uc = -128;
printf("for -128, c = %x, uc = %x\n", c, uc);
} void f_show1(void)
{
printf("for -1,f_show1: uint = %x\n", (unsigned int)-1);
printf("for -1,f_show1: int = %x\n", (int)-1);
printf("for -1,f_show1: c = %x\n", (char)-1);
printf("for -1,f_show1: uc = %x\n", (unsigned char)-1); printf("for -1,f_show1: uc = %d\n", (unsigned char)-1);
} int main()
{
f0();
f_show1(); f1();
f2(); return 0;
} /*
root@oucaijun:/work/dcc# gcc 1.c ;./a.out in linux:
sizeof(char) = 1
sizeof(int) = 4
sizeof(short int) = 2
sizeof(long int) = 4
sizeof(float) = 4
sizeof(double) = 8
sizeof(long double) = 12

//此处说明在linux系统中,对整数常数是以?方式表示
for -1,f_show1: uint = ffffffff
for -1,f_show1: int = ffffffff
for -1,f_show1: c = ffffffff
for -1,f_show1: uc = ff
for -1,f_show1: uc = 255 for 1, i = 1, ui = 1
for 1, c = 1, uc = 1
for 1, si = 1, usi = 1
for 1, f = 0
for 1, d = 0
for 1, ld = 0
for -1, i = ffffffff, ui = ffffffff
for -1, c = ffffffff, uc = ff
for -1, si = ffffffff, usi = ffff
for -1, f = 0
for -1, d = 0
for -1, ld = 0
for -255, c = 1, uc = 1
for -128, c = ffffff80, uc = 80 */

  

C语言,数据类型的更多相关文章

  1. C语言数据类型的理解

    数据类型的定义: 作为一种语言,必然有所谓的语言组成要素,就像日常生活中人们之间的交流一样,首先会有字,字再成词组,再来就是句子,后来呢就是段落等等.当然不同的字,词,句这些在一起,就会有不同的表达效 ...

  2. R语言数据类型

    R语言数据类型[转!!]Zhao-Pace  https://www.cnblogs.com/zhao441354231/p/5970544.html   R语言用来存储数据的对象包括: 向量, 因子 ...

  3. Go语言 数据类型,流程控制

    Go语言 数据类型,流程控制 人生苦短,Let's Go ! package main // 必须要有一个main包 import "fmt" func main() { fmt. ...

  4. C语言数据类型_02

    C语言数据类型:

  5. R语言 数据类型

    R语言数据类型 通常,在使用任何编程语言进行编程时,您需要使用各种变量来存储各种信息. 变量只是保留值的存储位置. 这意味着,当你创建一个变量,你必须在内存中保留一些空间来存储它们. 您可能想存储各种 ...

  6. C语言数据类型取值范围

    一.获取数据类型在系统中的位数 在不同的系统中,数据类型的字节数(bytes)不同,位数(bits)也有所不同,那么对应的取值范围也就有了很大的不同,那我们怎么知道你当前的系统中C语言的某个数据类型的 ...

  7. 一:c语言(数据类型和运算符)

    #include <stdio.h> /*就是一条预处理命令,它的作用是通知C语言编译系统在对C程序进行正式编译之前需做一些预处理工作.*/ int main() /*C程序就是执行主函数 ...

  8. -- c语言数据类型总结 --

    C语言中的数据类型总结

  9. 第三课,T语言数据类型(版本TC5.0)

    数据类型 TC综合开发工具里使用的是可变类型,就是在程序执行过程中,TC综合开发工具会自动把数据转换为需要的类型,转换失败会出现相应的提示但是在一些特殊的场景下,是需要做类型强制处理,那么这时就需要使 ...

  10. C语言数据类型

    1.概述 C 语言包含的数据类型如下图所示: 2.各种数据类型介绍 2.1整型 整形包括短整型.整形和长整形. 2.1.1短整形 short a=1; 2.1.2整形 一般占4个字节(32位),最高位 ...

随机推荐

  1. eclipse导出doc文档

    选中需要导出的项目, 1 点击eclipse上面的Project,选择Generate javadoc..., 2 然后配置 javadoc command,比如我本地的路径为: C:\Program ...

  2. linq 总结

    linq 常用方法: top   var query=(from u in User ...).Take(10) dblinq的坑: 时间必须当参数传入,否则会报错 多个left join时,如果jo ...

  3. poco vs Boost

    Wooce Yang收集整理 POCO的优点: 1) 比boost更好的线程库,特别是一个活动的方法的实现,并且还可设置线程的优先级. 2) 比 boost:asio更全面的网络库.但是boost:a ...

  4. 1297 - Largest Box(三分)

    1297 - Largest Box   PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB In t ...

  5. POJ输出状态的逻辑。

    实測POJ应该是採取一个一个点測.哪个点fail了就输出哪个点的状态,但接下来的点貌似还是要測. 測试方法,1000先測出有6个測点1,2,3,4,6.15,然后交了下面代码. #include &l ...

  6. 解惑:NFC手机怎样轻松读取银行卡信息?

    自支付宝钱包8.0推出了NFC新功能,仅仅要将支持NFC功能的手机靠近公交卡.银行卡等带有芯片的IC卡上,可迅速读取卡内剩余金额.卡的信息,还能够给卡进行充值,很贴心有用. 可是非常多网友表示担忧,要 ...

  7. javascript得知 - js的Date对象函数

    js的Date功能很强大.通常使用. 首先获得当前的日期: var CurDate = new Date(); var Year = CurDate.getFullYear(); //年份(四位 例: ...

  8. 【Eclipse】修改项目访问名称

    Properties --> Web Project Settings --> Context root --> 输入想要用的名称(默认是项目名)

  9. c++,多继承造成的二义性及解决办法

    #include <iostream> using namespace std; //------------------------------- class A1{ public: i ...

  10. <转> 30 个有关 Python 的小技巧

    目录[+] 1.1 拆箱 1.2 拆箱变量交换 1.3 扩展拆箱(只兼容python3) 1.4 负数索引 1.5 切割列表 1.6 负数索引切割列表 1.7指定步长切割列表 1.8 负数步长切割列表 ...