int   代表整数,它在内存中占4个字节,二进制的表示方式是占用了三十二位,二进制中只包含0和1,那它的最大值就是全为1,但int是

有符号类型,所以最高位(左边的第一位)要拿出来做符号位,这样就只有31位用来保存数字了,转换成十进制它的最大值为

2147483647,这个数值可以在计算器上计算得到,最高位为0代表正数,为1代表负数,最小值就是在最大数前添加一个负号,但是因

为0的原因会有正0和负0,因此将负0作为最小值,也就是将最小值再减去1得出int的最小值:-2147483648

注意:如果变量的类型为整形,赋值给变量带有小数,则输出变量时,小数部分会省去

long和int类似,不过long在32位系统上占4个字节,在64位系统上是8个字节, 在32位系统上可以用long long来占用8字节  示例:

#include<stdio.h>
int main()
{
  long x=21474836472;
  printf("%ld",x);
  return 0;
}

%ld  l代表long, d代表int  合起来就是long int(长整形)

#include<stdio.h>
int main()
{
  unsigned int x=4294967294;
  printf("%u",x);
  return 0;
}

unsigned 代表无符号,无符号整形占用4个字节,由于符号位也可以用来表示数值,因此比有符号位大一倍,但是由于没了符号位所以

只能表示正数,u代表unsigned

#include<stdio.h>
int main()
{
  unsigned long x=2147483647;
  printf("%lu",x);
  return 0;
}

短整形:

#include<stdio.h>

int main()
{
  short x=32767;
  printf("%hd",x);
  return 0;
}

short跟int类似,占两个字节 ,h代表short

#include<stdio.h>
int main()
{
  unsigned short x=65535;
  printf("%hu",x);
  return 0;
}

将整数的值转为8进制

#include<stdio.h>
int main()
{
  int x=16;
  printf("%#o\n",x);
  return 0;
}

o代表用八进制的格式来输出整形数据,#代表输出八进制的前缀

下面的是将整形的值转变为16进制

#include<stdio.h>
int main()
{
  unsigned int x=16;
  printf("%#x\n",x);
  return 0;
}

x代表十六进制,可以通过前缀来区分是八进制数还是十六进制数

使用typedef定义别名

#include<stdio.h>
int main()
{
  typedef unsigned short int us;
  us a=1,b=2,c=3;
  printf("%hu+%hu-%hu\n",a,b,c);
  return 0;
}

别名定义:unsigned short int -->us

浮点型变量:

#include<stdio.h>
int main()
{
  float a;
  double b;
  long double c;
  return 0;
}

float,double, long double   分别代表单精度,双精度,长双精度

float型变量占4个字节,取值范围为-3.4*10的38次到3.4*10的38次

#include<stdio.h>
int main()
{
  float x=3.40e38f;
  printf("%f",x);
  return 0;
}

e代表10,e38就代表10的38次,如果是-38就代表10的负38次方

f说明这是一个float类型的数值,假如不加f说明,编译器会认为这是一个double类型的数值

double型变量的取值范围,在内存中占8个字节

#include<stdio.h>
int main()
{
  double x=1.79e308;
  printf("%f",x);
  return 0;
}

#include<stdio.h>
int main()
{
  int x=sizeof(double);
  printf("%d\n",x);
  return 0;
}

sizeof()可以获得一个对象或类型所占用的内存空间

c语言学习第四天数据类型1的更多相关文章

  1. Go语言学习笔记四: 运算符

    Go语言学习笔记四: 运算符 这章知识好无聊呀,本来想跨过去,但没准有初学者要学,还是写写吧. 运算符种类 与你预期的一样,Go的特点就是啥都有,爱用哪个用哪个,所以市面上的运算符基本都有. 算术运算 ...

  2. R语言学习 第四篇:函数和流程控制

    变量用于临时存储数据,而函数用于操作数据,实现代码的重复使用.在R中,函数只是另一种数据类型的变量,可以被分配,操作,甚至把函数作为参数传递给其他函数.分支控制和循环控制,和通用编程语言的风格很相似, ...

  3. 〖C语言学习笔记 〗(二) 数据类型

    前言 本文为c语言的学习笔记,很多只是留下来占位的 数据类型 助记:变量就是在内存中挖个坑并给这个坑命名,而数据类型就是挖内存的坑的尺寸 基础类型 整数类型: short int int long i ...

  4. C语言学习 第四次作业总结

    本次作业主要为了复习分支语句,同时复习之前学习过的判断语句,printf和scanf函数的使用. 学习到这里,同学们应该已经基本掌握了基本的数据类型,分支结构,循环结构,条件判断语句.应该可以利用这些 ...

  5. C语言学习总结(四) 剩余内容

    第六章.剩余内容 (预处理指令,宏定义,条件编译,文件操作) 预处理指令 简单的来说就是在程序编译之前需要做的事情 1.宏定义 概念: 是一个替换代码的预处理指令,可以在编译之前进行代码替换(宏展开, ...

  6. C语言学习第四章

    今天学习C语言循环结构,为什么要用循环呢?因为有时候我们对一堆的数字进行重复的处理的时候要重复的编写一些相同或者差不多的代码,让程序显得很臃肿,而且写着也麻烦,如果用循环来写的话能简化很多,出错的话也 ...

  7. Swift语言学习(四)字符串与Array等集合的使用

    Swift 提供了C和Objective-C基础类型的自己一套版本,包括用于整型的Int,用于浮点值的Double和Float,用于布尔值的Boolean,和用于文本数据的String.Swift还提 ...

  8. [C语言学习笔记四]变量与系统的交互

    使用 const 创建常量和使用 volatie 优化变量 C语言中使用 const 定义常量. 例如: const INT a = 10; 此处如果添加a = 20;,编辑器则会报错,因为此处 a ...

  9. Dart语言学习(十四) Dart泛型

    什么是泛型? 通俗理解:泛型就是解决 类 接口 方法的复用性.以及对不特定数据类型的支持(类型校验) 如下代码,只能返回string类型的数据 String getData(String value) ...

随机推荐

  1. CRM SQL 创建活动 ActivityPointer

    只是插入的任务,邮件,约会之类的没有研究,以下是官方文档:https://msdn.microsoft.com/zh-cn/library/gg334533.aspx /* 1 实体名 new_xxx ...

  2. oracle 建立视图,创建用户并授予查询权限

    一.需求 数据库有个表car,需要为这个表建立一个视图view_car,并新建一个用户user01,赋予查询这个视图的权限 二.实施步骤 1.以管理员clgl登陆数据库,新建视图view_car: c ...

  3. springmvc笔记(来自慕课网)

    1.准备工作:springmvc相关的jar包. 2.这里我们先用eclipse来操作. 首先看一个接口编程,后面的所有知识点都是通过这个接口编程引出的. OneInterface.java pack ...

  4. Delphi调用外部程序函数:WinExec() 和ShellExecute详解

    1,WinExec():   WinExec主要运行EXE文件,不能运行其他类型的文件.不用引用特别单元.   原型:UINT WinExec(exePath,ShowCmd)   示例,我想要用记事 ...

  5. [ZOJ 1006] Do the Untwist (模拟实现解密)

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=6 题目大意:给你加密方式,请你求出解密. 直接逆运算搞,用到同余定理 ...

  6. java 数据结构

    二叉树: 存储结构:顺序存储结构和链式存储结构 二叉树的先根遍历的递归与非递归算法 二叉树的中根遍历的递归与非递归算法 二叉树的后根遍历的递归与非递归算法 二叉树的层次遍历的递归与非递归算法 e.g. ...

  7. Regional Changchun Online--Ponds

    网址:http://acm.hdu.edu.cn/showproblem.php?pid=5438 Ponds Time Limit: 1500/1000 MS (Java/Others)    Me ...

  8. elasticsearch从mysql导入数据

    详细:https://github.com/jprante/elasticsearch-jdbc(最下面有各数据库的导入方法说明) elasticsearch版本为1.5.2 1.下载 elastic ...

  9. python写的battle ship小游戏 - 1.0

    最近学python,这是今天写的一个小游戏. from random import randint class Board(object): board = [] def __init__(self, ...

  10. 解决数据标准及质量AppScan(测试)安全性问题相关方法

    1. SQL注入文件写入(需要用户验证) 解决办法:通过建立过滤器方法,对所有用户输入信息进行清理过滤.通过清理过滤用户输入所包含的危险字符,便可能防止恶意的用户导致应用程序执行计划外的任务,例如:启 ...