关于由于赋值导致字节的截断、字节扩展及数据类型的提升:

一、字节截断:
int----->char 当一个字节(8位)放不下时,出现截断,直接取(最后一个字节)最后面面8位。 例如:100000000=256将256放在一个字符变量时,他就会截取后面的8位,放在字符变量中的那一个字节中,将最高位“1”,抛弃了。 所以以%d输出时,结果为0.
例如:
#include
int main(void)
{
int a = 256;
char c;
c = a;
printf("c:=%c\n",c);
return 0;
}
二、字节扩展:
char<----->int (短字节最高位是什么,之后长字节的3个字节就补什么)
单精度浮点型:float
%f:默认以double类型打印的
%.nf:小数点之后保留n位
%f:小数点之后保留6位,
float a=3.2 :意思:开辟一个大小为4字节、名称叫a的内存空间,并将3.2存入该空间
在赋值时,要输入的数后面加上f,以保证输入的数为4字节。
(因为一个常量小数占8个字节,默认是double型。)

例如:float a=3.5f;
float 开辟内存空间时,开辟4字节大小
双精度浮点型:double
double b=8.8 意思:开辟一个大小为8字节、名称叫b的内存空间,并将8.8存入该空间
double 开辟空间时占8字节。
三、数据类型提升
X
短字节向长字节看齐,
有符号向无符号看齐,
整数向浮点型看齐,
单精度向双精度看齐,
证明:短字节向长字节看齐 证明:有符号向无符号看齐:运算结果最后是无符号数。
#include <stdio.h>
#include <stdlib.h>
int main ()
{
unsigned int a =5;
int b=-20;
((a+b)>0)?printf("*"):printf("#");
return 0;
}

about 字节的更多相关文章

  1. lua执行字节码的过程介绍

    前面一篇文章中介绍了lua给下面代码生成最终的字节码的整个过程,这次我们来看看lua vm执行这些字节码的过程. foo = "bar" local a, b = "a& ...

  2. TODO:字节的那点事Go篇

    TODO:字节的那点事Go篇 (本文go version go1.7.3 darwin/amd64) 在Golang中string底层是由byte数组组成的. fmt.Println(len(&quo ...

  3. (转载)JAVA动态编译--字节代码的操纵

    在一般的Java应用开发过程中,开发人员使用Java的方式比较简单.打开惯用的IDE,编写Java源代码,再利用IDE提供的功能直接运行Java 程序就可以了.这种开发模式背后的过程是:开发人员编写的 ...

  4. python注释、脚本参数、字节码

    python注释.脚本参数.字节码 --道心 python安装 1.下载安装包 https://www.python.org/downloads/ 2.安装 默认安装路径:C:\python27 3. ...

  5. 为什么 C++ 中成员函数指针是 16 字节?

    当我们讨论指针时,通常假设它是一种可以用 void * 指针来表示的东西,在 x86_64 平台下是 8 个字节大小.例如,下面是来自 维基百科中关于 x86_64 的文章 的摘录: Pushes a ...

  6. 字节、字、bit、byte的关系

    字 word 字节 byte 位 bit 字长是指字的长度 1字=2字节(1 word = 2 byte) 1字节=8位(1 byte = 8bit)  一个字的字长为16 一个字节的字长是8 bps ...

  7. 大端字节序&小端字节序(网络字节序&主机字节序)

    大端字节序:整数的高位字节存储在内存的低地址处,低字节存储在内存的高地址处. 小端字节序:整数的高位字节存储在内存的高地址处,低字节存储在内存的低地址处. 一般pc大多采用小端字节序,也称为主机字节序 ...

  8. C++编译期间字节序判断

    当前常用的字节序一般就两种,大端序和小端序. 下面列出四种字节序的表达方式.在对应平台下,内存布局为{0x,00,0x01,0x02,0x03}的四字节,表示为十六进制的值就如下面代码所示的. END ...

  9. for循环每次取出一个字符(不是字节)

    python3.5 for循环每次取出一个字符(不是字节) #!/usr/bin/env python # -*- coding:utf-8 -*- my_str = "我是哈哈" ...

  10. Nginx %00空字节执行php漏洞

    Nginx如下版本:0.5.*, 0.6.*, 0.7 <= 0.7.65, 0.8 <= 0.8.37在使用PHP-FastCGI执行php的时候,URL里面在遇到%00空字节时与Fas ...

随机推荐

  1. 洛谷【P1898】缘分计算

    我对模拟的理解:http://www.cnblogs.com/AKMer/p/9064018.html 题目传送门:https://www.luogu.org/problemnew/show/P189 ...

  2. bzoj 3994 约数个数和 —— 反演+数论分块

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3994 推导过程和这里一样:https://www.cnblogs.com/MashiroSk ...

  3. 二、java 与 scala相互调用

    介绍:scala 是简化的java,运行于jvm的脚步语言.Java和scala通过各自编译器编译过都是jvm能解析class文件.本文介绍java和scala如何互调  scala的源代码文件是以. ...

  4. 启动新内核出现:Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000004

    转载请注明出处:http://blog.csdn.net/qq_26093511/article/details/51841281 启动新内核出现错误:Kernel panic - not synci ...

  5. JS---星星评分

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  6. jQuery 文档操作 - html() 方法

    1.转自:http://www.w3school.com.cn/jquery/manipulation_html.asp 设置所有 p 元素的内容: <html> <head> ...

  7. LAMP 1.7Apache用户认证

    假如我们要在www.aaa.com/的 abc/目录下放一些文件,只想让自己访问,做一个用户认证.输入正确的用户和密码才能访问 cd /data/www mkdir abc cd abc cp /et ...

  8. Java 数据类型间的相互转化

    Java中常见基本数据类型包括(String除外[引用]) Date(int year,int month,int day,int hour,int minute,int sec); String 格 ...

  9. 使用showMessageDialog显示消息框

    -----------------siwuxie095                         工程名:TestJOptionPane 包名:com.siwuxie095.showdialog ...

  10. AngularJS中的DI

    AngularJS中的DI一直以为Angular中的DI是很高大上的东西,也自己写过一个DI的demo,知道其中的难点就是最后动态代码的执行:我现在知道了参数的值,也知道了我要执行的方法/创建对象的类 ...