java传递指针_Java:通过指针传递参数
#include
void swap(int *a,int *b); //声明函数
int main()
{
int i=5,j=10; //初始化整数变量
printf(“调用函数前,i=%d,j=%d\n”,i,j); //输出调用函数前i,j的值
swap(&i,&j); //调用函数交换i,j的值
printf(“调用函数前,i=%d,j=%d\n”,i,j); //输出调用函数后i,j的值
getch();
return 0;
}
void swap(int *a,int *b) //交换两个数的函数
{
int t;
t =*a;
*a =*b;
*b = t;
}
在参数列表的每个形参前面添加了一个星号(*),表示是一个指针,即对应该参数的实参应该是一个保存相同类型数据的地址。
第16~23行定义函数swap0,在该函数的代码中,也使用了指针运算符。使用指针运算符取得传入地址单元中的值,将该地址单元中的值进行交换。
在main0()函数的第10行中调用swap0函数时,不能直接将变量i和j作为实参,而要使用取地址运算符“&”将变量i和j的地址传入函数。这样,main()函数中的变量i、j和swap0函数中的变量a、b就具有相同的内存地址。即变量、a指向同一个地址单元,变量j、b指向同一个地址单元。当在swap()函数中对变量a和b的值进行修改时,其改变将保存到对应的地址单元中,而这些地址单元在main()函数中通过变量i和j也可以访问得到。这样就可将函数swap()中对变量的修改返回到调用函数main()中,从而完成该程序数据的交换功能。
运行结果:
调用函数前:i=5,j=10
调用函数后:i=10,j=5
java传递指针_Java:通过指针传递参数相关推荐
- java改变实参_java中引用传递问题,在函数中修改引用的指向,会不会影响实参?...
是时候展现一下我的JAVA基础知识了,2333. 我按照执行顺序给你写注释好了. Person p1 = new Person(10); //创建了一个对象 //p1.age=10; modify(p ...
- java压缩对象_Java 对象指针压缩
很久之前就看到过 Java 对象指针压缩这个技术,只是一直没具体想为什么要偏移 3 位,好吧,最近才知道原因是因为大多数 JVM 实现都是采用 8 位对齐,所以二进制位中的后三位都是 0. Let's ...
- java get 空指针_Java 中空指针处理方法
空指针异常(Null Pointer Exception)是我们平时最容易碰到的,也是最令人讨厌的异常.本文介绍如何避免出现空指针异常. 首先我们看如下的示例: private Boolean isF ...
- java接收数据_java 如何接收数据集参数
@RequestBody String requestBody 可以接收 josn 字符串 ,list 等等 public int updateLoaneePriorityNew(HttpServ ...
- java jni c 指针_通过JNI传递C和Java之间的指针
通过JNI传递C和Java之间的指针 目前,我正在尝试创build一个使用CUDAfunction的Java应用程序. CUDA和Java之间的连接工作正常,但我有另一个问题,并想问,如果我的想法是正 ...
- 函数参数的传递问题(一级指针和二级指针)
函数参数的传递问题(一级指针和二级指针) [转] 原以为自己对指针掌握了,却还是对这个问题不太明白.请教! 程序1: void myMalloc(char *s) //我想在函数中分配内 ...
- java main 参数传递参数_Java千问:Java语言如何给main方法传递参数?
大家都知道,Java语言运行程序的入口方法叫做main,这个方法有一个参数,这就表示说,我们要运行主方法,就必须给main方法传递一个参数.但是,大家似乎对这个参数向来都是视而不见,从来都没给主方法传 ...
- C++ 笔记(14)— 指针(指针声明、取地址、取值、new/delete、NULL指针、指针运算、指针数组、数组指针、指针传递给函数、从函数返回指针)
1. 声明指针 指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址.就像其他变量或常量一样,您必须在使用指 针存储其他变量地址之前,对其进行声明. 指针变量声明的一般形式为: type * ...
- 出参传递数组指针_C语言指针重难点详解
1为什么使用指针 假如我们定义了 char a='A' ,当需要使用 'A' 时,除了直接调用变量 a ,还可以定义 char *p=&a ,调用 a 的地址,即指向 a 的指针 p ,变量 ...
最新文章
- php请求路由,PHP 新手入门指南 - 表单请求与路由
- 【知识星球】猫猫狗狗与深度学习那些事儿
- Python爬虫还在写重试代码?快快学习下优雅的tenacity库!
- c++成员运算符的重载
- extract 模板 php,PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例...
- 将m个苹果放入n个盘子的问题【转】
- 9ztu.com 就找图商品图片商品条码搜索引擎
- python数学建模基础教程_Python 数学建模极简入门(一)
- Android Studio修改app图标以及名字
- wincc mysql_Wincc操作数据库SQLSERVER
- 求方差FPGA的实现方法
- 家用洗地机实用吗?家用洗地机款式推荐
- 推荐一个可以在电脑上玩所有下载渠道手游的安卓模拟器
- 如何关闭 Intel RST
- 新随笔--读书笔记《学会提问》:学习提出好问题的思维方法
- 爬虫开发04--代理IP
- 浅谈敏捷思想-08.从产品愿景到用户故事地图
- 为什么mac电脑识别不出来u盘?macbook识别不了u盘的解决办法
- 计算机往届生考研失败找工作,终于发现应届生和往届生考研复试会被歧视吗-考研复习...
- 新鸟文章:foreach里的Sqlcommand(有SqlTransaction)