美文网首页
C扩展:基本数据类型

C扩展:基本数据类型

作者: jdzhangxin | 来源:发表于2019-03-24 09:27 被阅读0次

1. 类型变种写法

在C语言中,除了有无符号关键字unsigned,还对应有一个有符号关键字signed,只是通常省略不写。此外,除了char,其他整型类型后面可以加上关键字int表示整型,通常也是省略不写。下面是各种类型其他对应写法。

No. 类型 其他写法
1 char signed char
2 short signed short intsigned shortshort int
3 int signed int
4 long signed long intlong intsigned long
5 long long signed long long intsigned long longlong long int

通常也使用unsigned表示unsigned int的简写。

2. 数值常量表示

如何表示天文数字?

直径 年龄
地球 6371千米 45.5亿年
太阳 1.392×106千米 45.7亿年
银河系 10万光年 80亿年
宇宙 1600亿光年 138.2亿年

注:1光年 = 9.46×1012千米

试一下

int earth_diameter = 6371;
int earth_age = 4550000000;
int sun_diameter = 1392000;
int sun_age = 4570000000;
int light_year = 9460000000000;
int galaxy_diameter = 100000*light_year ;
int galaxy_age = 8000000000;
int universe_diameter = 1600000000000*light_year;
int universe_age = 138200000000;
printf("earth_diameter = %d\n",earth_diameter);
printf("earth_age  = %d\n",earth_age);
printf("sun_diameter = %d\n",sun_diameter);
printf("sun_age  = %d\n",sun_age );
printf("galaxy_diameter = %d\n",galaxy_diameter);
printf("galaxy_age = %d\n",galaxy_age);
printf("universe_diameter = %d\n",universe_diameter);
printf("universe_age = %d\n",universe_age);

没有后缀的整数常量默认为int,只能表示21亿左右的数值,如果超过就会警告,执行就会出错,因为int无法表示超出的数字。

  1. 整数常量后缀
No. 类型 后缀
1 L/l long
2 LL/ll long long
3 U/u unsigned
4 L/lU/u组合 unsigned long
5 LL/llU/u组合 unsigned long long
int earth_diameter = 6371;
long long earth_age = 4550000000LL;
int sun_diameter = 1392000;
long long sun_age = 4570000000LL;
long long light_year = 9460000000000LL;
long long galaxy_diameter = 100000*light_year ;
long long galaxy_age = 8000000000LL;
long long universe_diameter = 1600000000000LL*light_year;
long long universe_age = 138200000000LL;
printf("earth_diameter = %d\n",earth_diameter);
printf("earth_age  = %lld\n",earth_age);
printf("sun_diameter = %d\n",sun_diameter);
printf("sun_age  = %lld\n",sun_age );
printf("galaxy_diameter = %lld\n",galaxy_diameter);
printf("galaxy_age = %lld\n",galaxy_age);
printf("universe_diameter = %lld\n",universe_diameter);
printf("universe_age = %lld\n",universe_age);
  1. 浮点数常量后缀
No. 类型 后缀
1 F/f float
2 F/f long double

没有后缀的浮点数默认为double

  1. 科学记数法
    表示方式:尾数部分e指数部分或者尾数部分E指数部分
    使用科学计数法表示数字更加简单。
int earth_diameter = 6371;
long long earth_age = 4.55e9;
int sun_diameter = 1.392e6;
long long sun_age = 4.57e9;
long long light_year = 9.46e12;
long long galaxy_diameter = 1e5*light_year ;
long long galaxy_age = 8e9;
long long universe_diameter = 1.6e12*light_year;
long long universe_age = 1.382e11;
printf("earth_diameter = %d\n",earth_diameter);
printf("earth_age  = %lld\n",earth_age);
printf("sun_diameter = %d\n",sun_diameter);
printf("sun_age  = %lld\n",sun_age );
printf("galaxy_diameter = %lld\n",galaxy_diameter);
printf("galaxy_age = %lld\n",galaxy_age);
printf("universe_diameter = %lld\n",universe_diameter);
printf("universe_age = %lld\n",universe_age);

注意:universe_diameter出现负值。表示long long也装不下这个数字(约为1026大于1012),可以使用double类型表示。

double universe_diameter = 1.6e12*light_year;
printf("universe_diameter = %f\n",universe_diameter);

输出数据不容易阅读,可以使用%e%E以科学记数法输出浮点数(注意:%e%E不能用来输出整数)。

printf("universe_diameter = %e\n",universe_diameter);

科学计数法法除了可以表示极大数,也可以表示极小数,比如电子的直径10-15m.

double electron_diameter = 10e-15;

相关文章

  • C扩展:基本数据类型

    1. 类型变种写法 在C语言中,除了有无符号关键字unsigned,还对应有一个有符号关键字signed,只是通常...

  • C++基础

    1.C的基本数据类型 java基本数据类型 C基本数据类型 基本数据类型所占字...

  • 【OC梳理】基本数据类型和基本运算

    Objective-C作为以C语言为基础的语言,其基本数据类型与C语言类似。 1.基本数据类型 基本数据类型可以参...

  • Java的基本数据类型(Primitive Types)

    Java数据类型分为内置类型和扩展类型两大类,其中的内置类型就是基本数据类型,而扩展类型则是Java语言根据基本类...

  • #C++ Primer Plus# 第三章 处理数据

    面向对象编程(OOP)的本质:设计并扩展自己的数据类型 内置C++数据类型C++数据类型 标识存储的数据的方法:使...

  • day02-java数据类型

    基本数据类型分为:1.基本类型 2.引用类型 1.基本类型 八大基本类型 数据类型扩展

  • 12.12 C语言数据类型、运算符基础学习

    一、C基本变量和语法 C的引入 1.程序解析: 2.C的数据类型 基本数据类型:整数类型:int:基本整形数据sh...

  • 【初识C语言】C语言基本数据类型

    C语言基本数据类型简介 1.概述 C 语言包含的数据类型如下图所示: C语言中的基本数据类型有整形、字符型、浮点型...

  • C语言基础

    数据类型 基本数据类型 java基本数据类型 浮点型 字符型 boolean true/false C的基本数据类...

  • iOS 基础数据类型

    一:数据类型集合: Objective-C数据类型可以分为:基本数据类型、对象数据类型 和 id类型 : 基本数据...

网友评论

      本文标题:C扩展:基本数据类型

      本文链接:https://www.haomeiwen.com/subject/zesnpqtx.html