C语言中 %p的含义

格式控制符“%p”中的p是pointer(指针)的缩写。指针的值是语言实现(编译程序)相关的,但几乎所有实现中,指针的值都是一个表示地址空间中某个存储器单元的整数。

printf函数族中对于%p一般以十六进制整数方式输出指针的值,附加前缀0x。

示例:
int i = 1;
printf("%p",&i);
相当于
int i = 1;
printf("0x%x",&i);
对于32位的指针,输出一般会是类似0xf0001234之类的结果。
%p存在的理由除了附加前缀输出的便利性以外,如LS所说,指针的大小是不确定的,由实现决定。根据地址空间的大小,一般有16位、32位、64位的指针。尽管目前32位平台上的指针一般全是32位的,但旧的一些平台上可能有多种长度的指针(例如非标准的near、far、huge修饰的pointer)混用,无法用%x、%lx、%hx、%llx(对应int、long、short、long long)中的任意一种保证能输出所有类型的指针。
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1 排版规则 1) 程序应采用缩进风格编写,每层缩进使用一个制表位(TAB),类定义、方法都应顶格书写; 2) 源程序建议使用英文书写,尽量不含有文。每行不超过80字符。对于较长的语句(>80字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读;循环、判断等语句若有较长的表达式或语句,则要进行适应的划分; 3) 左花括号要另起一行,不能跟在上一行的行末; 4) 一个变量定义占一行,一个语句占一行; 5) 对独立的程序块之间、变量说明之后必须加空行; 6) 在结构成员赋值等情况,等号对齐,最少留一个空格; 7) 若函数或过程的参数较长,则要进行适当的划分。 8) 形参的排序风格:  最常使用的参数放在第一位;  输入参数列表应放在输出参数列表的左边;  将通用的参数放在特殊的参数的左边。 2 命名规范 2.1 应用程序的命名 “系统简称”+模块名称 2.2 子模块的命名 每个子模块的名字应该由描述模块功能的1-3以单词组成。每个单词的首字母应大写。在这些单词可以使用一些较通用的缩写。 2.3 变量的命名 变量的命名的基本原则是使得变量的含义能够从名字直接理解。可以用多个英文单词拼写而成,每个英文单词的首字母要大写,其英文单词有缩写的可用缩写;变量的前缀表示该变量的类型;对于作用域跨越10行以上的变量名称不能少于4个字符,除循环变量,累加变量外不得使用I、j、k等名称的变量。变量分为取全局变量和局部变量,对于全局变量以加前缀“g_”来区分。 使用有意义的英语单词,使用大小写分隔,每个单词的第一个字母为大写 标识符种类 书写规范 示 例 函数/过程名/变量 一般标识符 CheckButtonStates 宏标识符 大写标识符 SALES_TAX 类型定义 ‘T’+一般标识符 TMyType 类标识符 ‘C’+一般标识符 CEditBox 结构标识符 ‘S’+一般标识符 SMyStructure 联合标识符 ‘U’+一般标识符 UMyUnion 字符标识符 ‘c’+一般标识符 cReadKey 字符串标识符 ‘s’+一般标识符 sComputerName 整数标识符 ‘i/ui/l/ul’+一般标识符 iNumber, ulCurrent 浮点型标识符 ‘f/d’+一般标识符 fPrice,dMoney 逻辑标识符 ‘b’+一般标识符 bIsDetailed 对象标识符 特征小写字母+一般标识符 fMyStatus, tMyTree 指针变量 p+类型前缀+一般标识符 piCount 全局变量 g+类型前缀+一般标识符 giCount 类私有变量 f+类型前缀+一般标识符 fiCount 数据库变量 以m打头 miCount 考虑到习惯性和简洁性,对于按常规使用的局部变量允许采用极短的名字,如用n、i作为循环变量,p、q作为指针等。另外,要注意的是:全局变量在程序不要定义太多,能用局部变量的就用局部变量。如果要使用相关的变量,建议采用类的方式或者结构的方式存放,以减少具体变量的个数。 2.4 常量的命名 常量所有的字母均为大写。并且单词之间使用下划线”_”隔开。 2.5 函数/过程的命名 函数/过程名称应该尽量使用能够表达函数功能的英文名称,函数名称应该禁止使用如同function1,function2等含义不清的名称。单词间应该使用大小写分隔。全局函数/过程名称以“g_”前缀开始。 2.6 接口命名 接口名称要以大写字母开头。如果接口包含多个单词,每个单词的首字母大写,其他字母小写,如果,这些单词是缩略语(例如XML),也要首字母大写,其他字母小写(写为Xml)。 2.7 类的命名 类名称要以大写字母开头; 类名称如果包含多个单词,每个单词的首字母要大写,其他字母小写;如果这些单词是缩略语(例如XML),也要首字母大写,其他字母小写(写作Xml); 类名称应该是一个名词或名词短语; 类成员变量的命名规则与上述规则相同,但是要以“m_”开始,表示其为成员变量(Member); 类名称不能出现下划线。 2.8 方法的命名

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值