C语言中,如何把十六进制或八进制的值赋给一个变量

作者&投稿:窦食 (若有异议请与网页底部的电邮联系)
C语言中,如何把十六进制或八进制的值赋给一个变量~

怎样把一个十六进制的值赋给一个变量?
c语言支持二进制、八进制、十进制和十六进制的计数系统,在表示一个数字时,用某个特殊的字符来区别其所属的计数系统是必要的。在表示二进制数时,要在数字的末尾加上“b”(如101b);在表示八进制数时,要使用反斜杠(如\014);在表示十六制数时,要使用“0x”字符序列(如0x34);显然,在表示十进制数时,不需要任何标识符,因为十进制是缺省的计数系统。
要把一个十六进制的值赋给一个变量,你可以象下面这样做:
int x ;
x=0x20; /* put hex 20(32 in decimal) into x */
x='0x20' ; / * put the ASCII character whose value is
hex 20 into x * /
只有了解了十六进制计数系统,你才能知道要赋的值应该如何表示,详见20.24。
怎样把一个八进制的值赋给一个变量?
把一个八进制的值赋给一个变量与把一个十六进制的值赋给一个变量一样简单:
int x ;
x=\033; / * put octal 33 (decimal 27) into x * /
x='\033' ; / * put the ASCII character whose value is
octal 33 into x * /

以八进制读入变量n:scanf("%o",&n);
将一个八进制数123赋给变量n:n=0123;
以十六进制读入变量n:scanf("%x",&n);
将一个十六进制数0x123赋给变量n:n=0x123;
二进制不能直接读入或赋值,可以先编写函数转化为十进制或十六进制后再赋值。

char num1 = 0x12;//十六进制,十进制数是18
char num2 = 012; //八进制,十进制数是10


C语言中怎么把八进制和十六进制转换成十进制的
如果都是整型值,不需要转换,因为8进制 16进制 10进制只是不同的写法 值是相同的。直接赋值即可。如果是字符串 可以用sscanf 八进制用%o 16进制用%x 比如 char s[10] = "11";\/\/8进制。int a;sscanf(s,"%o", &a);执行后 a=9 类似的 char s[10] = "11";\/\/16进制。int a;sscanf...

c语言 如何把参数十六进制地址完整存入char数组
1、在C语言中变量的地址实际上是一个unsigned的类型。因此常规操作使用unsigned变量来存储,比如下面的代码:include <stdio.h>int main(){int a = 2;unsigned a_addr = (unsigned) (&a);printf("%x\\n", a_addr); return 0;}2、如果使用char数组来保存地址,可以使用union联合体来间接实现...

C语言中如何把数字用八进制和十六进制表示出来,要用程序写出来_百度知 ...
八进制字面常量记写法以0开头,十六进制以0x开头,于整数类型存储,可以调用标准输出函数分别用转换说明%O\/%o、%X\/%x输出它们的值表示。int value = 10;printf("%d = 0%o,0xd%x\\n", value, value, value);printf("%d,%d\\n", 0x123ABC, 027);int ov = 077;unsigned int hv = 0xBC;printf...

C语言编写程序如何以字符形式输入一个十六进制数,将其变换成一个十进 ...
从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。样例输入 FFFF 样例输出 65535 思路:感觉自己的下面两个方法都对 方案一:方案二:

c语言中以十六进位制输出0怎么输出
255在c语言中用十六进位制数输出是什么?printf("%X",255); 输出是FF c语言如何倒序输出十六进位制数 有多个方法,最方便是用标准函式strrev:#include<stdio.h>#include<string.h>#include<stdlib.h>intmain(){intx=0x1234;\/16进位制的1234chars[20];\/存放16进位制字串itoa(x,s,16);将数值...

如何把十六进制数据0xDF,送到1602屏上 c语言
给你个程序,看不懂问我 include<reg51.h> defineuint unsigned int defineuchar unsigned char sbit lcden=P2^7; \/\/定义E片选 sbit lcdrs=P2^5; \/\/定义引脚RS sbit lcdrw=P2^6; \/\/定义引脚 RW uchar num;void delay(uint z);\/\/延时函数 void write_com(uchar com) \/\/定义命令函数 ...

C语言中十六进制字符数组转化为字符串
include <stdio.h> unsigned char s_des[100] = {0};int length = 9;unsigned char s_src[length] = {0xFE,0x01,0x52,0xFF,0xEF,0xBA,0x35,0x90,0xFA};unsigned char IntToHexChar(unsigned char c){ if (c > 9)return (c + 55);else return (c + 0x30);} int main...

C语言如何写十六进制转十进制的程序?
这个非常简单:include <stdio.h>int main(void){ int var; scanf("%0X", &var);\/\/输入一个16进制的数 printf("%d", var);\/\/将var以10进制输出 return 0;}

C语言中的十六进制如何书写?
C语言中的十六进制,主要用于描述整型常量,细分而来有两类,一类是整型常量,一类是转义字符常量。1、整型常量,一般以0x开头。比如 unsigned ui = 0x3f8ccccd;2、转义字符常量,一般以\\x开头,比如 char x = '\\x31';

c语言中怎么看懂十进制十六进制
2、十六进制与10进制的对应关系是:0-9对应0-9;A-F对应10-15;N进制的数可以用0~(N-1)的数表示,超过9的用字母A-F。举例如下:intx=23;printf("%x",x);\/\/以16进制格式输出,输出17。printf("%o",x);\/\/以8进制格式输出,输出27。更多关于c语言中怎么看懂十进制十六进制,进入:https...

普宁市19858288721: c语言怎么输出8进制和16进制啊帮我写个例子好吧?
白哈肝络: printf("%0",x) ; /*输出x为八进制数*/ 例如:int x=10; printf("x=%0",x) ; 结果:x=12

普宁市19858288721: C语言中,如何把十六进制或八进制的值赋给一个变量
白哈肝络: 十进制跟我们平常是使用的数字没有区别,0x开头的的是十六进制数,0开头的是八进制数. #include <stdio.h> #indef EXIT_SUCCESS #define EXIT_SUCCESS 0X0 #endif int main(void){int t = 0, h = 0, e = 0;t = 12345; //给变量赋十进制数值h = 0x520; //给变量赋十六进制数值(必须是无符号整数)e = 04234; //给变量赋八进制数值return EXIT_SUCCESS; }

普宁市19858288721: C语言中 输出十进制 八进制 十六进制 有哪些表示方法 -
白哈肝络: %d%o%x%e 是实数,用科学计数法计的格式字符 说明 %a 一个浮点值(仅C99有效) %A 同上 %c 一个字符 %d 十进制整数 %i 十进制,八进制,十六进制整数 %o 八进制整数 %x 十六进制整数 %X 同上 %c 一个字符 %s 一个字符串,遇空格、制表符或换行符结束. %f 实数,可以用小数形式或指数形式输入. %F 同上 %e 同上 %E 同上 %g 同上 %G 同上 %p 一个指针 %u 一个无符号十进制整数 %[] 扫描字符集合 %% %符号

普宁市19858288721: c语言编程怎么实现进制转换? -
白哈肝络: 1、十进制转换成八进制有两种方法: (1)间接法:先将十进制转换成二进制,然后将二进制又转换成八进制. (2)直接法:八进制是由二进制衍生而来的,因此可以采用与十进制转换为二进制相类似的方法,还是整数部分的转换和小数部分的...

普宁市19858288721: C语言中怎么把八进制和十六进制转换成十进制的?
白哈肝络: 把一个八进制转换成十进制采用方法:把这个八进制的最后一位乘上80,倒数第二位乘上81,……,一直到最高位乘上8n,然后将各项乘积相加的结果就它的十进制表达式. 把八进制36转换为十进制 (36)8=3*81+6*80=24+6=(30)10 把一个十六进制转换成十进制采用方法:把这个十六进制的最后一位乘上160,倒数第二位乘上161,……,一直到最高位乘上16n,然后将各项乘积相加的结果就它的十进制表达式.

普宁市19858288721: c语言中的数据类型及二进制 八进制 十六进制之间的转换? -
白哈肝络:2的3次方等于8,一位八进制数正好是三位二进制;2的4次方等于16,一位十六进制数正好是四位二进制. 二进制转换成八进制的方法:以小数点为中心,整数部分自右向左分组,小数部分自左向右分组,每三位一组,不足的补零(...

普宁市19858288721: 怎么把十六进制转化为八进制 -
白哈肝络: 十六进制转化为八进制的方法有两种,如下: 第一种:他们之间的转换可以先转成二进制然后再相互转换. 第二种:他们之间的转换可以先转成十进制然后再相互转换. 十六进制(英文名称:Hexadecimal),是计算机中数据的一种表示方法...

普宁市19858288721: 求C语言编译下,十进制转换为二进制,八进制,十六进制的程序 -
白哈肝络: #include<iostream> using namespace std; int main() { int n,x,i=1,num=0; cin>>n;//输入十进制数n while(n!=0) { x=n%2; num=num+x*i; i=i*10; n=n/2; } cout<<num<<endl;// 输出二进制数 return0; } 这是C++程序,和C语言差不多 而转换为八进制,十六进制,就直接把2改为8或16就可以了

普宁市19858288721: C语言中如何换算八进制=进制=十六进制 -
白哈肝络: 最简单的办法:将数据换算成10进制(除2取余法),然后再用fprintf直接打印就好了 如下: 1 #include <stdio.h> 2 int 3 main(void) 4 { 5 int n=8; 6 fprintf(stdout,"八进制是:%o\n十六进制是:%x\n",n,n); 7 8 return 0; 9 } 如果还有问题,欢迎来http://groups.google.com/datastream来讨论

普宁市19858288721: C语言程序十进制的数转换成八进制的数 -
白哈肝络: C语言程序十进制的数转换成八进制的数的办法: #include <stdio.h> #include <math.h> void main() { int n,a,sum = 0,i =0; printf("十进制输出一个数n\n"); scanf("%d",&n); while(n) { a = n%8; n = n/8; sum += a*pow(10,i); i++; } printf("八进制输出sum:%d",sum); }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网