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. TOP/ORDER BY 顺序(转)

    问题重现: --建表语句,测试数据 ),CreateTime datetime) go ) begin insert into TestTable )),DATEADD(day,@Count,GETD ...

  2. Inno Setup命令行安装卸载参数

    安装命令行参数安装程序接受可选的命令行参数.这些对于系统管理员以及其它程序调用安装程序时有用./SP- 在安装开始时禁用“这将安装... 你想继续吗?”的提示,当然,如果 [Setup] 段的指令 D ...

  3. asp.net子窗体与父窗体交互

    今天在项目上遇到了这个问题,其实只是window.returnValue的简单应用,不是asp.net的专属内容.作为积累,记录一个简单的实现模型. 图1  用到的文件 从图1中我们可以看到,只用到了 ...

  4. strstr、strcmp、strlen、strcpy

    const char* strstr(const char *str, const char* substr) { int i, j, temp; ; str[i] != '\0'; i++) { j ...

  5. JAVA设计模式之单一职责原则

    概念: 就一个类而言应该只有一个因其他变化的原因. 流程: 问题由来:设类或接口类C负责两个不同不同的职责:职责T1,职责T2.当由于职责T1需求改变进而需要修改类C时,可能导致职责T2收到不可预知的 ...

  6. IIS错误代码表

    当用户试图通过 HTTP 或文件传输协议 (FTP) 访问一台正在运行 Internet 信息服务 (IIS) 的服务器上的内容时,IIS 返回一个表示该请求的状态的数字代码.该状态代码记录在 IIS ...

  7. 150 Opening ASCII mode data connection. FTP连接的PASV和PORT方式

    FTP连接服务器时出现 150 Opening ASCII mode data connection.一般是客户端设置PORT 主动方式连接造成的.切换成PASV 被动模式后一般能连接上. 一.什么是 ...

  8. Oracle数据库(2)

    ; select ename,empno,deptno from emp where job='CLERK'; select * from emp where comm>sal; select ...

  9. 家业兴衰说传承(cc)

    家业兴衰说传承 2011年10月30日 09:53 选稿:天潼  来源:东方网  作者:万润龙 浙商走笔之九 “富贵子生浪荡子,浪荡子生苦恼子,苦恼子生勤奋子,勤奋子生富贵子”.这“四子歌”是流传在浙 ...

  10. 洛谷P2733 家的范围 Home on the Range

    P2733 家的范围 Home on the Range• o 26通过o 61提交• 题目提供者该用户不存在• 标签USACO• 难度普及+/提高 提交 讨论 题解 最新讨论• 暂时没有讨论题目背景 ...