#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:通过指针传递参数相关推荐

  1. java改变实参_java中引用传递问题,在函数中修改引用的指向,会不会影响实参?...

    是时候展现一下我的JAVA基础知识了,2333. 我按照执行顺序给你写注释好了. Person p1 = new Person(10); //创建了一个对象 //p1.age=10; modify(p ...

  2. java压缩对象_Java 对象指针压缩

    很久之前就看到过 Java 对象指针压缩这个技术,只是一直没具体想为什么要偏移 3 位,好吧,最近才知道原因是因为大多数 JVM 实现都是采用 8 位对齐,所以二进制位中的后三位都是 0. Let's ...

  3. java get 空指针_Java 中空指针处理方法

    空指针异常(Null Pointer Exception)是我们平时最容易碰到的,也是最令人讨厌的异常.本文介绍如何避免出现空指针异常. 首先我们看如下的示例: private Boolean isF ...

  4. java接收数据_java 如何接收数据集参数

    @RequestBody String requestBody  可以接收 josn  字符串 ,list 等等 public int updateLoaneePriorityNew(HttpServ ...

  5. java jni c 指针_通过JNI传递C和Java之间的指针

    通过JNI传递C和Java之间的指针 目前,我正在尝试创build一个使用CUDAfunction的Java应用程序. CUDA和Java之间的连接工作正常,但我有另一个问题,并想问,如果我的想法是正 ...

  6. 函数参数的传递问题(一级指针和二级指针)

    函数参数的传递问题(一级指针和二级指针) [转] 原以为自己对指针掌握了,却还是对这个问题不太明白.请教!   程序1:   void  myMalloc(char  *s)  //我想在函数中分配内 ...

  7. java main 参数传递参数_Java千问:Java语言如何给main方法传递参数?

    大家都知道,Java语言运行程序的入口方法叫做main,这个方法有一个参数,这就表示说,我们要运行主方法,就必须给main方法传递一个参数.但是,大家似乎对这个参数向来都是视而不见,从来都没给主方法传 ...

  8. C++ 笔记(14)— 指针(指针声明、取地址、取值、new/delete、NULL指针、指针运算、指针数组、数组指针、指针传递给函数、从函数返回指针)

    1. 声明指针 指针是一个变量,其值为另一个变量的地址,即,内存位置的直接地址.就像其他变量或常量一样,您必须在使用指 针存储其他变量地址之前,对其进行声明. 指针变量声明的一般形式为: type * ...

  9. 出参传递数组指针_C语言指针重难点详解

    1为什么使用指针 假如我们定义了 char a='A' ,当需要使用 'A' 时,除了直接调用变量 a ,还可以定义 char *p=&a ,调用 a 的地址,即指向 a 的指针 p ,变量 ...

最新文章

  1. php请求路由,PHP 新手入门指南 - 表单请求与路由
  2. 【知识星球】猫猫狗狗与深度学习那些事儿
  3. Python爬虫还在写重试代码?快快学习下优雅的tenacity库!
  4. c++成员运算符的重载
  5. extract 模板 php,PHP自定义函数实现assign()数组分配到模板及extract()变量分配到模板功能示例...
  6. 将m个苹果放入n个盘子的问题【转】
  7. 9ztu.com 就找图商品图片商品条码搜索引擎
  8. python数学建模基础教程_Python 数学建模极简入门(一)
  9. Android Studio修改app图标以及名字
  10. wincc mysql_Wincc操作数据库SQLSERVER
  11. 求方差FPGA的实现方法
  12. 家用洗地机实用吗?家用洗地机款式推荐
  13. 推荐一个可以在电脑上玩所有下载渠道手游的安卓模拟器
  14. 如何关闭 Intel RST
  15. 新随笔--读书笔记《学会提问》:学习提出好问题的思维方法
  16. 爬虫开发04--代理IP
  17. 浅谈敏捷思想-08.从产品愿景到用户故事地图
  18. 为什么mac电脑识别不出来u盘?macbook识别不了u盘的解决办法
  19. 计算机往届生考研失败找工作,终于发现应届生和往届生考研复试会被歧视吗-考研复习...
  20. 新鸟文章:foreach里的Sqlcommand(有SqlTransaction)

热门文章

  1. SQL合并 合并id相同的数据
  2. 在html循环字母,怎么样能遍历一个字符串
  3. 2021年中国集成电路行业产业链分析:下游市场需求巨大[图]
  4. Qt窗口之间传值和结构体数据
  5. MaxEnt运行报错的各种问题及解决方法
  6. XJTU第八周大计基编程作业
  7. 写好代码的注意点(代码整洁之道学习笔记)
  8. 【亲测已解决】CentOS7 ifconfig commend not fount(命令找不到)
  9. Page Size 【转】
  10. 复旦学子《可解释机器学习》中文版火了,完整PDF开发下载!