c语言函数打印零星,C语言零星笔记--(const、typedef)
好不容易偷闲,去逛了下论坛,这手贱的又点到了技术区,看了个哥们的问题,就是const和typedef结合在一起会出现什么情况,那百度和360结合会是什么况。。。。
描述下问题:
typedef int* p2i;
int a = 2;
int b = 3;
int c = 4;
const int *pa = &a;
//不能用pa修改a的值,*pa = value
const p2i pb = &b;
//pb不能指向其他地址,pb = value
p2i const pc = &c;
//pc不能指向其他地址,同上。
这里涉及了两点:(1)const的先左还是先右结合 (2)typedef的效果 (3)变量的类型
(1)const 向左走向右走:const的意义就是只读,读书,“只读经典型”,就是const先向右走,如果右侧有类型符,如int,float、、之流,就跟类型符结合。若没有,则向左走,跟左侧的*符结合。
(2)typedef与#define有区别,其中之一就是typedef封装性,或者叫原子性,即通过typedef将目标封装成整体,并起了个新的名字(典型贴牌山寨机)。但效用等价。
对于const int *pa = &a;
(3)变量的类型:就是这是个什么变量,找到变量,查看其右,若为(),则表示函数,若为 [ ] 则为数组,查看其左,左侧为 * ,则表示指向 XXoo 的指针。
则const int *pa = &a,const与类型为int 的类型结合,pa与 *结合,综合起来:pa是个指针,一个指向只读整形的指针。即pa指向的内容不能变。但pa的指向可以变。
const p2i pb = &b:pb右侧无(),[ ],即pb非数组,也不是函数,左侧没见到指针符号 *(被封装了),故pb仅仅是个变量,类型为只读p2i型的变量,将p2i的意义加进去,pb就是个只读指针变量,即指针的指向不能改变,指向的地址里的内容可以改变。
对于p2i const pc =&c,理解了typedef的封装性,其实雷同于 int const x 和const int x ,所以,这种情况的意义同上。
c语言函数打印零星,C语言零星笔记--(const、typedef)相关推荐
- c语言函数官网,c语言函数
c语言函数[编辑] 概述 c语言函数包括多种函数.它的出现方便了人们对很多数据的计算,节省了大量的时间,方便了人们的计算,为人们提供了一个简便的,时用的函数运算.也在一定的领域中有一个突破性进步,但是 ...
- c语言函数大全doc,c语言函数大全.doc
c语言函数大全c语言函数大全 getchar,getch 原型:extern int getchar(void); 用法:#include 功能:读键 说明:从键盘上读取一个键,并返回该键的键值 ge ...
- C语言函数手册:c语言库函数大全|C语言标准函数库|c语言常用函数查询
http://see.xidian.edu.cn/cpp/u/hanshu/ 本函数手册涵盖了常用的C语言函数,从函数功能.参数和返回值三方面做了详细的说明,并且给出了大量实例,加深读者的理解. 为了 ...
- c语言函数指针学习心得,c语言 函数指针 学习C语言笔记
c语言 函数指针 大一学的C语言,课,算是学了一遍,后来接触Java,C++,易语言,python,还有写单片机用的类似C语言,可以说后来根本没有好好学,C也忘个差不多了,但是这次我课选了OC,不喜欢 ...
- c语言函数助手使用,C语言函数助手怎么查询函数?
许多网友向小编反映不知道怎么使用C语言函数助手?哪里有C语言函数助手的使用教程?今天极速小编为大家提供一个使用教程,希望对大家有帮助!首先我们下载C语言函数助手(下载地址:http://www.jis ...
- c语言 函数 ppt,《C语言函数》PPT课件.ppt
<<C语言函数>PPT课件.ppt>由会员分享,可在线阅读,更多相关<<C语言函数>PPT课件.ppt(17页珍藏版)>请在装配图网上搜索. 1.回顾 ...
- c语言 函数的声明,C语言中的函数声明
看了C陷阱与缺陷,第一个给我震撼的就是理解函数声明了,下面是我的理解. 1.理解函数声明 为了模拟开机启动时的情形,我们必须设计出一个C语句,以显示调用位于地址0的子例程.调用语句如下: (*(voi ...
- C语言函数替代strlen,C语言实现strlen函数的几种方法【转】
今天偶然看到了一个实现strlen函数的方法,也实际练习了一下,挺有意义的,其实现的一些思想值得学习,记录一下吧.我这里除了写两个比较巧妙的递归实现之外,也写了另外一种常规的方式. 传说常见的一个笔试 ...
- C语言函数打印数字金字塔
一,目标:输入一个1~9的数字(n)打印1~n的一个数字金字塔例子如下 输入:5 输出: 1 2 2 3 3 3 4 4 4 4 5 ...
最新文章
- ⑥python模块初识、pyc和PyCodeObject
- FPGA等效门数的计算方法
- 锐捷路由器--多线路应用路由
- Kubernetes存储之ConfigMap
- 转:Chrome渲染分析之Timeline工具的使用
- Kerberos认证过程学习理解
- 51单片机数码管小数点c语言,求助一个51单片机控制的数码管计算器带小数点功能的...
- Machine Learning - VII. Regularization规格化 (Week 3)
- python3 写入excel_python3读取、写入、追加写入excel文件
- RoboWare Studio使用的部分问题
- C# 压缩解压Zip文件
- USB打印服务器作用,沁恒股份USB打印机服务器方案概述
- 通过stm32cubemx配置DCMI驱动ov5640摄像头
- 如何将div拼接成html代码,给div拼接html 拼接字符串
- 扒一扒那些叫欧拉的定理们(十一)——欧拉数论定理
- 网站被攻击了怎么处理
- 哈佛结构和冯·诺依曼结构
- windows安装Pillow报错找不到zlib
- android 购物车实现,Android Studio实现简单购物车功能
- AtCoder题解——Beginner Contest 170——F - Pond Skater
热门文章
- Table of Contents - Tomcat
- 99.两个时钟不同步的设备怎么通信?
- Fedora 33更新异常:Errors during downloading metadata for repository ‘updates‘
- 面试必备之:MFC socket编程(浅出+深度:服务端和客户端端口问题)
- new一个xssfworkbook时出错_java用poi操作excel的时候,new XSSFWorkbook,总是报错?
- 微信sdk服务器支付文档,微信支付-普通下单开发者文档
- Centos7 防火墙开放端口,查看状态,查看开放端口
- 035_Breadcrumb面包屑
- 022_Table表格
- 004_LoadOnStartup