/*
* 15_c语言中的进制操作.c
*
* Created on: 2015年7月5日
* Author: zhong
*/ #include <stdio.h>
#include <stdlib.h> /**
* c语言中的进制表示
* 前面加0b表示二进制
*  加0x表示十六进制
* 数字前加0表示八进制
*
* printf按进制打印
* %d %i 以十进制打印
* %o 以八进制打印
* %x 以十六进制打印
*
* %p 打印变量地址
* %f 打印小数
* %s 打印字符串
* %c 打印字符
*
*
*
1.二进制转十进制
0b1100 = 0 * 2的0次方 + 0 * 2的1次方 + 1 * 2的2次方+ 1 * 2的3次方
= 0 + 0 + 4 + 8 = 12
0b1111 = 1 + 2 + 4 + 8 = 15
0b1010 = 10 2.十进制转二进制
67 = 64 + 2 + 1 = 2的6次方 + 2的1次方 + 2的0次方
= 0b1000000 + 0b10 + 0b1
= 0b1000011 3.n位二进制的取值范围
2位二进制位的取值范围:0~3 0~2的2次方-1
3位二进制位的取值范围:0~7 0~2的3次方-1
n位二进制位的取值范围:0~2的n次方-1 4个字节 -> 31bit
0 000 0000 0000 0000 0000 0000 0000 1100
0 ~ 2的31次方-1
*
*
*/
void num_show_type() {
//默认就是十进制表示
int a = 12;
printf("%d->%o\n", a,a); //%d 以十进制打印 //二进制
// int nu = 0b1100;
// printf("%d\n", nu); //%d 以十进制打印
//八进制
int o = 014;
printf("%o->=%d\n", o,o); //%o 以八进制打印 //十六进制
int x = 0xc;
printf("%x->=%d\n", x); //%x 以十六进制打印 }
// 输出一个整数的二进制存储形式
void putBinary(int n)
{
int bits = sizeof(n) * 8;
while (bits-->0) {
printf("%d", n>>bits&1);
if (bits%4==0) printf(" ");
}
printf("\n");
}
int main15() {
// num_show_type();
putBinary(12);
return 0;
}

C语言学习笔记:15_c语言中的进制操作.c的更多相关文章

  1. C语言学习笔记--C语言中的宏定义

    1. C 语言中的宏定义 (1)#define 是预处理器处理的单元实体之一(因此,预处理器只是简单的进行替换,并不(2)#define 定义的宏可以出现在程序的任意位置(包括函数体的内部)(3)#d ...

  2. C语言学习笔记--C语言中变量的属性关键字

    变量属性关键字的使用语法:property type var_name; 1.auto 关键字 auto关键字是C语言中局部变量的默认的关键字,C编译器默认所有的局部变量都是auto的,它表明了被修饰 ...

  3. C语言学习笔记 (002) - C++中引用和指针的区别(转载)

    下面用通俗易懂的话来概述一下: 指针-对于一个类型T,T*就是指向T的指针类型,也即一个T*类型的变量能够保存一个T对象的地址,而类型T是可以加一些限定词的,如const.volatile等等.见下图 ...

  4. C语言学习笔记--C语言中的逗号表达式

    逗号表达式:exp1,exp2,epx3,...,expN; (1)逗号表达式是 C 语言中的“粘贴剂” (2)逗号表达式用于将多个子表达式连接为一个表达式 (3)逗号表达式的值为最后一个子表达式的值 ...

  5. Go语言学习笔记——Go语言数据类型

    布尔型 布尔型的值只可以是常量 true 或者 false.一个简单的例子:var b bool = true. 数字类型 整型 int 和浮点型 float32.float64,Go 语言支持整型和 ...

  6. Go语言学习笔记——Go语言的make的理解

    实例:https://tour.go-zh.org/moretypes/10 谢大<Go Web编程>书中的讲解https://github.com/astaxie/build-web-a ...

  7. Go语言学习笔记——Go语言的指针

    Go具有指针.指针保存了变量的内存地址. 类型*T是指向类型T的值得指针.其零值是nil var p *int &符号会生成一个指向其作用对象的指针 i:=42 P=&i *符号表示指 ...

  8. HTML语言学习笔记(会更新)

    # HTML语言学习笔记(会更新) 一个html文件是由一系列的元素和标签组成的. 标签: 1.<html></html> 表示该文件为超文本标记语言(HTML)编写的.成对出 ...

  9. [java学习笔记]java语言核心----面向对象之this关键字

    一.this关键字 体现:当成员变量和函数的局部变量重名时,可以使用this关键字来区别:在构造函数中调用其它构造函数 原理:         代表的是当前对象.         this就是所在函数 ...

随机推荐

  1. [转]"RDLC"报表-参数传递及主从报表

    本文转自:http://www.cnblogs.com/yjmyzz/archive/2011/09/19/2180940.html 今天继续学习RDLC报表的“参数传递”及“主从报表” 一.先创建D ...

  2. ACM_鸡兔同笼(二元一次方程)

    鸡兔同笼 Time Limit: 2000/1000ms (Java/Others) Problem Description: 今有雉兔同笼,上有n头,下有m足,问雉兔各几何? Input: 输入有多 ...

  3. 题解报告:hdu 1847 Good Luck in CET-4 Everybody!(入门SG值)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1847 Problem Description 大学英语四级考试就要来临了,你是不是在紧张的复习?也许紧 ...

  4. spring jdbc、事务(三)

    spring整合jdbc spring中提供了一个可以操作数据库的对象(JDBCTemplate),对象封装了jdbc技术. 1.使用spring整合jdbc需要jdbc驱动.c3p0连接池.spri ...

  5. java中equals方法和==的用法

    java中equals方法的用法以及==的用法(参考一)equals 方法是 java.lang.Object 类的方法.两种用法说明:(1对于字符串变量来说,使用“==”和“equals()”方法比 ...

  6. (转)用JS实现表格中隔行显示不同颜色

    用JS实现表格中隔行显示不同颜色 第一种: <style> tr{bgColor:expression(     this.bgColor=((this.rowIndex)%2==0 )? ...

  7. python--6、常用模块

    time与datetime模块 time模块,用于输出时间 在Python中,用这几种方式来表示时间: 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按 ...

  8. Android MediaRecorder自定义分辨率

    Android MediaRecorder自定义分辨率 工作这么久了,确实积累了不少东西,但都是以文档的形式存在U盘里的,为什么不写博客呢?因为懒啊!!!总感觉博客太难写了(大概是上学时候写作文恐惧症 ...

  9. javascript中计算点击多少次

    点击事件:onclick <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  10. Oracle数据库的导入和导出

    Oracle数据库的导入和导出,是一项重要的的技术活,不但解决了数据库的导入导出,更方便快捷的获得数据. 使用imp和exp导入导出数据 使用exp导出数据 存放目录为\ORACLE_HOME\BIN ...