社区
非技术区
帖子详情
void f(int *&) { };
fzhfeng
2002-03-16 03:11:29
改变指针本身而不改变指针指向的内容可以吗?
比如:
void f(int *&) {i++;}
int i=4;
int* p=&i;
f(i);
...全文
73
13
打赏
收藏
void f(int *&) { };
改变指针本身而不改变指针指向的内容可以吗? 比如: void f(int *&) {i++;} int i=4; int* p=&i; f(i);
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Tommy
2002-08-22
打赏
举报
回复
x97(旱鸭子)
变的只是p的值,i的值不会变的
x97
2002-08-21
打赏
举报
回复
void f(int *&i) {i++;} //指针的引用。
int i=4;
int* p=&i;
f(p);//传的是一个整形指针。
函数运行后 i的值是会变的!
fangrk
2002-03-21
打赏
举报
回复
int i;
int*&p=&i;//p是&i的引用
#include <iostream.h>
void f(int *&);
main()
{ int i=10;
int *p=&i;
f(p);
cout<<i<<endl;//i==11
return 0;
}
void f(int *&t)
{ (*t)++;
}
fzhfeng
2002-03-21
打赏
举报
回复
thanks to everyone
fzhfeng
2002-03-21
打赏
举报
回复
thinking in c++
zhaig
2002-03-16
打赏
举报
回复
我觉得不可以,指针值改变,它的指向也改变了。
prototype
2002-03-16
打赏
举报
回复
to luoxiao_std01:
it is alright for pointer to be changed like that. it will be obviouse if i change the code a little bit to:
int i[5];
int* p = i; // p points to &i[0]
f( p ); // p points to &i[1]
the usage of f() function will make sense.
purplelover
2002-03-16
打赏
举报
回复
这有什么用??
luoxiao_std01
2002-03-16
打赏
举报
回复
不要误人子弟好不好!!!!
指针是可以这样改变的吗!!!!!
void f(int *&i)(i++);???????
你要干什么?
*&i不就是 i 吗?
prototype
2002-03-16
打赏
举报
回复
should be:
void f(int*& i) { i++; }
int i =4;
int* p = &i;
f( p );
p is changed (p = p + 1), while i doesn't change.
mengzq
2002-03-16
打赏
举报
回复
void f(int *& i) {i++;}
int i=4;
int* p=&i;
f(p);
这样就ok!
fzhfeng
2002-03-16
打赏
举报
回复
忘了
void f(int *&i) {i++;}
rico80
2002-03-16
打赏
举报
回复
f的定义为什么没有形参呢?
我不明白你是什么意思。
c语言
void
int
的区别,c语言
void
f(
int
*,
int
*); 这里*是什么意思呀?
c语言
void
f(
int
*,
int
*); 这里*是什么意思呀?來源:互聯網2009-09-18 23:54:45評論分類: 電腦/網絡 >> 程序設計 >> 其他編程語言問題描述:1. 实现交换两整数数组对应元素的函数。#include
void
f(
int
*,
int
*);
void
main(){
int
a[5],b[5],i;pr
int
f("请输入五个整...
pFun = ( Fun )*( (
int
* ) * (
int
* )( &b ) + i )
typedef
void
( *Fun )(
void
); //是吧Fun定义为一个没有参数,返回
void
类型的函数指针 *( (
int
* ) * (
int
* )( &b ) + i )这一段, (
int
*)*相当于没有进行任何操作,所以等同于 *( (
int
* )( &b ) + i ) 这里先取b的地址,然后把地址转换成
int
*,之后+i是指针算术,也就是在b的地址上加一个
int
的长度,最后最前面的*是解指针,座椅这段最后返回的是“b的地址+i个
int
长度的值” 最前面的(Fun)
说透一级指针和二级指以及(
void
**)&在双链表中的应用
void
(*signal (
int
signo,
void
(*func) (
int
) )) (
int
)这一大堆看起来很难,其实仔细分析下不算很难搞。 首先要明白一件事:这里都是从最基本的语法展开的。 那么这里最基本的语法就是函数的声明:返回值 函数名(参数)。 先将这一大堆给看成
void
(f)(
int
)也就是将*signal (
int
signo,
void
(*func) (in
(
void
*)&a 以及
void
字义全面解释
(
void
*)&a语句什么意思
void
基本上有以下两个意思: 1.无,没有 2.任意类型 这两个意思,与
void
出现的代码位置和修饰变量相关: 函数返回值位置,如:
void
func(
int
i) ; //表示func()函数没有返回值,
void
不可省 函数参数位置,如:
void
func(
void
) ; //表示f
牛客网——const二级指针报错: 无法从“
int
**”转换为“const
int
**”
喵哥在牛客网遇到这么一题选择题: class A { };
void
f(const A** p) {}
void
g(const A * const *p) {}
void
k(const A*&p) {}
int
main() { const A * ca = new A(); A*a = new A(); A** p = &a; k(ca); //1 ...
非技术区
15,446
社区成员
58,120
社区内容
发帖
与我相关
我的任务
非技术区
C/C++ 非技术区
复制链接
扫一扫
分享
社区描述
C/C++ 非技术区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章