首页
技术博客
PHP教程
数据库技术
前端开发
HTML5
Nginx
php论坛
新用户注册
|
会员登录
PHP教程
技术博客
编程问答
PNG素材
编程语言
前端技术
Android
PHP教程
HTML5教程
数据库
Linux技术
Nginx技术
PHP安全
WebSerer
职场攻略
JavaScript
开放平台
业界资讯
大话程序猿
登录
极速注册
取消
热门标签 | HotTags
go
cookie
config
bitmap
ip
merge
plugins
hook
bytecode
emoji
window
golang
timestamp
php5
io
数组
match
require
import
function
client
copy
blob
main
replace
datetime
uml
range
schema
iostream
hashtable
loops
metadata
controller
express
foreach
email
audio
string
buffer
httprequest
vba
tree
integer
keyword
hashset
node.js
cmd
runtime
post
stream
install
md5
hashcode
random
command
process
cpython
input
select
split
uri
scala
int
byte
regex
vbscript
perl
search
sum
heap
list
php8
char
bit
subset
nodejs
tags
triggers
当前位置:
开发笔记
>
编程语言
> 正文
两级间接关系的指针如何赋值?const与非const的关系实在搞不懂。
作者:CCTV知府影 | 来源:互联网 | 2023-05-17 14:07
#include<iostream>#include<string>#include<ctime>usingnamespacestd;
#include
#include
#include
using namespace std;
int main()
{
const int **pp2;
int *p1;
const int n=13;
pp2=&p1;
*pp2=&n;
*p1=10;
return 0;
}
//书上是怎么规定的?
12 个解决方案
#1
一个普通变量中存放的是一个数据。
一个一级指针中存放的是一个普通变量的地址。
一个二级指针中存放的是一个一级指针的地址。
依此类推。
#2
int **
这种东西一般是和二维数组配合使用的。
或者当作函数参数,来在函数体内,改变指针的值。
没有你这么用的。
#3
const 并不是永远不变的,通过指针是可以改变的,楼主不知道?
#4
想表达什么意思 ?问题要一个一个的问
#5
最后一句 *p1 = 10;
p1指向的是&n,这样就修改了n的值。
#6
看错了,楼主不要乱用,这样基本是非法的,而且完全看不懂要做什么,虽然语法上没问题
#7
汗,我是知道,但不想说这种问题了,现实中写这种代码会被同事骂死的
#8
const int **pp2;//pp2是一个指针,指向一个const int*所以要将一个const int*类型的指针的地址赋给pp2
#9
LZ的代码是错的吧!!
你这段代码的意思是:
const int n=13;
n=10;
肯定不行的。
下面我用一个#代表一个四字节的内存。
一级指针:p:#->#,其实这个p也是一个变量,只不过这个变量中存放的是另一段内存的首地址罢了。
int *p,这只是一种定义,他就跟定义变量一样,同样会分配一段内存(只不过这个内存在32位机器上永远是四字节),这段内存中存放的是另一段内存的首地址。
p=&t;这就是把t的地址存到了p这个变量中了。
二级指针:p:#->#->#,这个p也是变量,只不过这个变量中存放的是一个一级指针所代表的变量的地址。
LZ只要记住一句话:不论多少级指针,他也都只是一种变量,只不过这个变量的内容有他特殊的意义和特殊的处理方法。
LZ慢慢琢磨吧!!!!
#10
上面的代码是c++ primer plus上的。这段代码里有一句是错误的。我不明白,为什么错误?
#11
引用 10 楼 woaininingyu 的回复:
上面的代码是c++ primer plus上的。这段代码里有一句是错误的。我不明白,为什么错误?
可能我前面说的不怎么明白
如果正确的话,
最后一句 *p1 = 10;
p1指向的是&n,这样就修改了n的值。
故不能让这样的情况正确,
C++ primer plus上好像说的很清楚
#12
这样子,楼主,你就抓住一个基本原则,const一定要对应,比如const int**=const int **;不能出现const int**=int **、* const int *=int **之类的
const
include
ios
string
int
main
数组
写下你的评论吧 !
吐个槽吧,看都看了
会员登录
|
用户注册
推荐阅读
main
差分约束系统求解House Man跳跃问题的思路与方法
本文讨论了使用差分约束系统求解House Man跳跃问题的思路与方法。给定一组不同高度,要求从最低点跳跃到最高点,每次跳跃的距离不超过D,并且不能改变给定的顺序。通过建立差分约束系统,将问题转化为图的建立和查询距离的问题。文章详细介绍了建立约束条件的方法,并使用SPFA算法判环并输出结果。同时还讨论了建边方向和跳跃顺序的关系。 ...
[详细]
蜡笔小新 2023-12-14 11:49:51
main
Open judge C16H: Magical Balls 快速幂+逆元问题解析
本文主要解析了Open judge C16H问题中涉及到的Magical Balls的快速幂和逆元算法,并给出了问题的解析和解决方法。详细介绍了问题的背景和规则,并给出了相应的算法解析和实现步骤。通过本文的解析,读者可以更好地理解和解决Open judge C16H问题中的Magical Balls部分。 ...
[详细]
蜡笔小新 2023-12-14 12:03:27
main
P1651 塔 (动态规划) 的最大高度计算方法
本文介绍了P1651题目的描述和要求,以及计算能搭建的塔的最大高度的方法。通过动态规划和状压技术,将问题转化为求解差值的问题,并定义了相应的状态。最终得出了计算最大高度的解法。 ...
[详细]
蜡笔小新 2023-12-13 19:52:19
main
动态规划算法的基本步骤及最长递增子序列问题详解
本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ...
[详细]
蜡笔小新 2023-12-13 15:38:19
main
在类中定义数组时出错 - Error on defining arrays in class
Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ...
[详细]
蜡笔小新 2023-12-14 17:38:12
main
HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ...
[详细]
蜡笔小新 2023-12-14 15:08:18
main
油田地块的划分和计数方法
本文介绍了一种划分和计数油田地块的方法。根据给定的条件,通过遍历和DFS算法,将符合条件的地块标记为不符合条件的地块,并进行计数。同时,还介绍了如何判断点是否在给定范围内的方法。 ...
[详细]
蜡笔小新 2023-12-14 09:18:20
main
Java太阳系小游戏分析和源码详解
本文介绍了一个基于Java的太阳系小游戏的分析和源码详解。通过对面向对象的知识的学习和实践,作者实现了太阳系各行星绕太阳转的效果。文章详细介绍了游戏的设计思路和源码结构,包括工具类、常量、图片加载、面板等。通过这个小游戏的制作,读者可以巩固和应用所学的知识,如类的继承、方法的重载与重写、多态和封装等。 ...
[详细]
蜡笔小新 2023-12-14 19:53:34
main
Java容器中的compareto方法排序原理解析
本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ...
[详细]
蜡笔小新 2023-12-14 13:53:31
main
求解hdu 1003 java题目的动态规划优化方法
本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ...
[详细]
蜡笔小新 2023-12-14 13:11:00
main
九度OnlineJudge之1002:Grading问题的解决方法
本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ...
[详细]
蜡笔小新 2023-12-14 13:00:09
main
C++省略号类型和参数个数不确定函数参数范例
本文介绍了C++中省略号类型和参数个数不确定函数参数的使用方法,并提供了一个范例。通过宏定义的方式,可以方便地处理不定参数的情况。文章中给出了具体的代码实现,并对代码进行了解释和说明。这对于需要处理不定参数的情况的程序员来说,是一个很有用的参考资料。 ...
[详细]
蜡笔小新 2023-12-14 12:36:28
main
如何在有序字符序列中插入新字符并保持有序
本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ...
[详细]
蜡笔小新 2023-12-14 11:16:33
main
二叉树层序创建问题的解决方法
本文介绍了解决二叉树层序创建问题的方法。通过使用队列结构体和二叉树结构体,实现了入队和出队操作,并提供了判断队列是否为空的函数。详细介绍了解决该问题的步骤和流程。 ...
[详细]
蜡笔小新 2023-12-13 18:20:50
main
输出1000内能被3整除且个位数为6的所有整数的程序填充
本文介绍了一个程序,可以输出1000内能被3整除且个位数为6的所有整数。程序使用了循环和条件判断语句来筛选符合条件的整数,并将其输出。 ...
[详细]
蜡笔小新 2023-12-13 16:30:11
CCTV知府影
这个家伙很懒,什么也没留下!
Tags | 热门标签
go
cookie
config
bitmap
ip
merge
plugins
hook
bytecode
emoji
window
golang
timestamp
php5
io
数组
match
require
import
function
client
copy
blob
main
replace
datetime
uml
range
schema
iostream
RankList | 热门文章
1
简单加密维吉尼亚
2
[回忆]2007年的GDNT研发广东北电辞职信.
3
Linux下一键安装Python3&更改镜像源&虚拟环境管理技巧
4
zoj2059(经典dp)
5
php中修改数据功能实现,php怎么实现修改数据功能
6
Linux下测试程序的运行时间
7
dojo的布局控件
8
为什么在 textarea 上设 vmodel.lazy 后,编译结果会包含 blur 时的 $forceUpdate 行为?
9
如何使用最流行框架Tensorflow进行时序预测和时间序列分析
10
SQL Server中的大小写转换 - Upper to Lowercase conversion in SQL Server
11
引入故意缓存
12
关于 django 项目中 wsgi 文件的一点小疑问,有老哥能帮忙解答下吗?
13
【宇润日常疯测007】Swoole 协程与传统 fpm 同步模式比较
14
php dropdownlist,Yii2框架dropDownList下拉菜单用法实例分析
15
是时候理清 React 开发中的一些疑惑了
PHP1.CN | 中国最专业的PHP中文社区 |
DevBox开发工具箱
|
json解析格式化
|
PHP资讯
|
PHP教程
|
数据库技术
|
服务器技术
|
前端开发技术
|
PHP框架
|
开发工具
|
在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved |
京公网安备 11010802041100号
|
京ICP备19059560号-4
| PHP1.CN 第一PHP社区 版权所有