c语言中%p和%x的意思
图示:
其中,%p和%x均表示十六进制,只是格式不同
补充:%o表示八进制
附代码:
#include<stdio.h>
#include<string.h>
int main()
{
char c, s[20], *p;
int a=1234, *i;
float f=3.141592653589;
double x=0.12345678987654321;
p="How do you do";
strcpy(s, "Hello, Comrade");
*i=12;
c='\x41';
printf("a=%d\n", a); /*结果输出十进制整数a=1234*/
printf("a=%p\n", a);
printf("a=%6d\n", a); /*结果输出6位十进制数a= 1234*/
printf("a=%06d\n", a); /*结果输出6位十进制数a=001234*/
printf("a=%2d\n", a); /*a超过2位, 按实际值输出a=1234*/
printf("*i=%4d\n", *i); /*输出4位十进制整数*i= 12*/
printf("*i=%-4d\n", *i); /*输出左对齐4位十进制整数*i=12*/
printf("i=%d\n",i);
printf("i=%p\n", i); /*输出地址i=06E4*/
printf("f=%f\n", f); /*输出浮点数f=3.141593*/
printf("f=%6.4f\n", f); /*输出6位其中小数点后4位的浮点数
f=3.1416*/
printf("x=%lf\n", x); /*输出长浮点数x=0.123457*/
printf("x=%18.16lf\n", x);/*输出18位其中小数点后16位的长浮点
数x=0.1234567898765432*/
printf("c=%c\n", c); /*输出字符c=A*/
printf("c=%p\n", c); /*输出字符的ASCII码值c=41*/
printf("s[]=%s\n", s); /*输出数组字符串s[]=Hello, Comrade*/
printf("s[]=%6.9s\n", s);/*输出最多9个字符的字符串s[]=Hello,
Co*/
printf("s=%p\n", s); /*输出数组字符串首字符地址s=FFBE*/
printf("*p=%s\n", p); /* 输出指针字符串p=How do you do*/
printf("p=%p\n", p); /*输出指针的值p=0194*/ return 0;
}
结果:
代码2:
#include<stdio.h>int main(){int arr[5] = {10,20,30,40,50};int i = 0;printf("数据:\n\n");printf("十进制表示的数据:\n");for(i = 0 ; i < 5 ; i++){printf("%d\t",arr[i]);}printf("\n\n指针形式十六进制表示的数据:\n");for(i = 0 ; i < 5 ; i++){printf("%p\t",arr[i]);}printf("\n\n普通十六进制表示的数据:\n");for(i = 0 ; i < 5 ; i++){printf("%x\t",arr[i]);}printf("\n\n\n地址:\n");printf("\n\n十进制表示的地址:\n");for(i = 0 ; i < 5 ; i++){printf("%d\t",&arr[i]);}printf("\n\n指针形式十六进制表示的地址:\n");for(i = 0 ; i < 5 ; i++){printf("%p\t",&arr[i]);}printf("\n\n普通十六进制表示的地址:\n");for(i = 0 ; i < 5 ; i++){printf("%x\t",&arr[i]);}printf("\n");printf("\n\n普通八进制表示的地址:\n");
for(i = 0 ; i < 5 ; i++){printf("%o\t",arr[i]);}}
结果:
c语言中%p和%x的意思相关推荐
- c语言中struct和c++中class实例对比
前言 实现游戏中简单的打怪升级的功能 c语言中的struct #include <stdio.h>typedef void(*Train)(struct player*, int); ty ...
- 关于C语言中printf函数“输出歧视”的问题
目录 关于C语言中printf函数"输出歧视"的问题 问题描述 探索问题原因 另一种研究方法 问题结论 关于C语言中printf函数"输出歧视"的问题 问题描述 ...
- C语言中“野指针”、“悬空指针”是什么?
目录 1."野指针"(wild pointer) 2."悬空指针"(dangling pointer) 1."野指针"(wild point ...
- c+语言+null,C/C++语言中NULL、'\0’和0的区别
NULL.'\0'和0的值是一样的,都是0,不过它们的表现形式不一样: 1. NULL: 即空指针,不过在C和C++中并不一样.在VS 2013的库文件string.h中可以看到如果定义. 1 /* ...
- 关于C语言中的malloc和free函数的用法
一.malloc()和free()的基本概念以及基本用法: 1.函数原型及说明: void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针 ...
- python global函数_如何使用python语言中的global关键字获取函数值
在python语言中,如果在函数外层定义了一个全局变量a,函数内部又有一个同名的局部变量,想要这个全局变量的值改成为局部变量的值,可以使用global.下面利用一个实例说明如何实现这个场景,操作如下: ...
- c语言中的if语句_If ... C中的其他语句解释
c语言中的if语句 Conditional code flow is the ability to change the way a piece of code behaves based on ce ...
- C 语言中 void* 详解及应用介绍
void 在英文中作为名词的解释为 "空虚.空间.空隙",而在 C 语言中,void 被翻译为"无类型",相应的void * 为"无类型指针" ...
- java 英文字符 字节_3、在JAVA语言中,每个英文字符占 个字节,每个中文汉字占( )个字节。...
[判断题]中心原子中的几个原子轨道杂化时,必形成数目相同的杂化轨道. [单选题]集合 用区间表示正确的是 ( ) [单选题]15.Java语言的类间的继承关系是 [单选题]8.编译Java Appli ...
- 8位alu运算器(vhdl语言)_C语言中signed char类型,能表示-128到127,为什么负数多一位?...
初学者在学习C语言,谈到不同数据类型时,一般都能理解 unsigned 和 signed 的区别,无非就是有无符号而已.但是对于 signed 数据类型的数据范围,初学者却常常会感到迷惑. 对于 si ...
最新文章
- 报名 | 刘鹰教授:草根创新力:中国经济快速发展的秘诀
- 如何修改远程登录端口号?
- 2016 VR年终大趴行业大佬齐聚,共同探讨AR、VR的商业化道路之变
- 青蛙 mysql_青蛙学Linux—MySQL常用命令(二)
- mysql @变量和变量的区别及怎么判断记录唯一性
- 笔记-项目进度管理-资源平衡和资源平滑
- Jquery Mobile设计Android通讯录第二章
- 对java支持并发的理解_Java并发知识(1)
- 网络流 小结(更新时间2015/8/8)更新中
- python selenium 点击加载更多_如何等待页面加载,然后按selenium中的“加载更多”按钮?...
- js创建对象的几种常用方式小结(推荐)
- 探索ring0之内核概述
- php中输入这个网站的网址跳转到你定义的页面代码
- pycharm编程工具自带python环境_PyCharm配置Python3开发环境
- 远程登陆Win10自带子系统Ubuntu-22.04
- ios 描述文件位置
- Windows 窗口发送消息参数详解
- linux操作系统下c语言编程入门
- Android SurfaceView实战 打造抽奖转盘
- 住宅风水决议个人八大运 常鹤鸣
热门文章
- 老毛桃制作装机版u盘
- 怎样取消老毛桃软件赞助商---只需在输入框中输入老毛桃官网网址“laomaotao.org”...
- OSChina 周二乱弹 ——追妹子最管用的方式
- 【LeetCode】1641. Count Sorted Vowel Strings(动态规划)
- 极简主义!让手机壁纸,惊现高级脸Feel~
- 流氓并不可怕,就怕流氓有文化 -- 这是一个知识改变命运的例子
- Qt+VLC播放多个视频的Demo
- 辅修计算机的机械专业大二同学的跨考准备
- Unrecognized DataType
- ARP是如何工作的?