C之交换数据案例

//值传递

void swap(int i,int j){

  printf("交换后:\n ");

  int tmp;

  tmp = i;

  i = j;

  j = tmp; 

} 

//引用传递,传递地址

void swap1(int* p,int* q){

  printf("交换后:\n ");

  int tmp;

  tmp = *p;

  *p = *q;
  
  *q = tmp; 

} 

main(){

  int i =3;

  int j = 5;

  printf("i=%d \n",i); //i = 3

  printf("j=%d \n",j); //j = 5 

  //交换数值 

  swap1(&i,&j); 

  printf("i=%d \n",i); //i = 5

  printf("j=%d \n",j); //i = 3

}
时间: 2024-10-07 20:02:14

C之交换数据案例的相关文章

多台PLC之间通过GPRS直接交换数据,实现远距离无线通信

多个巨控PLC专用无线通讯模块之间可以通过GPRS直接交换数据,客户无需任何网络知识和搭建服务器,典型应用如下(以下的GRM模块必须是G系列的模块,而且需要插入开通GPRS的手机卡): 案例1:将远端的传感器,开关信号直接传递给PLC. 案例2:多个PLC之间互相交换数据. 除上述举例可以实现PLC之间远距离无线通信交换数据外,还可实现触摸屏和PLC之间,组态软件和PLC之间,触摸屏和传感器之间,等远程交换数据. 方案特点: 1. 无距离限制,只需有手机信号即可. 2. 无主从限制,可以实现一对

UDP(socket)接和数据案例封装成C++代码

 配置QT下的pro文件 TEMPLATE = app CONFIG += console CONFIG -= app_bundle CONFIG -= qt   LIBS += -lWs2_32   ##标示使用window下的Ws2_32.lib,-l表示要链接后面的库 #-lWs2_32,link Ws2_32.lib   SOURCES += main.cpp \     udp.cpp   HEADERS += \     udp.h 编写udp.h文件 #ifndef UDP_H

Java并发工具类(四):线程间交换数据的Exchanger

简介 Exchanger(交换者)是一个用于线程间协作的工具类.Exchanger用于进行线程间的数据交换.它提供一个同步点,在这个同步点两个线程可以交换彼此的数据.这两个线程通过exchange方法交换数据, 如果第一个线程先执行exchange方法,它会一直等待第二个线程也执行exchange,当两个线程都到达同步点时,这两个线程就可以交换数据,将本线程生产出来的数据传递给对方. Exchanger的应用场景 1.Exchanger可以用于遗传算法,遗传算法里需要选出两个人作为交配对象,这时

Java多线程之~~~使用Exchanger在线程之间交换数据

在多线程中,两个线程之间交换数据是非常常见的情况,我们可以使用公共的数据结构,同样,Java也提供了很好 的类供我们使用,那就是Exchanger类,这个类可以帮助我们在两个线程之间同步数据结构,下面我们以这个类再来实 现一遍生产者消费者模型,貌似这个模型已经被写烂了. package com.bird.concursey.charpet5; import java.util.List; import java.util.concurrent.Exchanger; public class Pr

函数模板,函数模板重载,可变参数模板,函数模板覆盖,通过引用交换数据

 1.函数模板初级,如果想使用模板,需要实例化,实例化的方式是加上<数据类型> #include <iostream> //函数模板可以对类型进行优化重载,根据类型会覆盖 //如果仍然要使用模板函数,需要实例化 template<class T> T add(T a, T b) { std::cout << "T add " << std::endl; return a + b; } int add(int a, int

Window下UDP(socket)接和收数据案例

 配置QT的环境变量,这台电脑à属性à高级系统设置à高级à环境变量à系统变量àpathàC:\Qt\Qt5.3.0\5.3\mingw482_32\bin;C:\Qt\Qt5.3.0\Tools\QtCreator\bin 创建一个QT项目:winAndLinuxMyUdpProject项目 修改QT的项目文件,修改winAndLinuxMyUdpProject.pro文件: 注意,这的的:LIBS+= -lWs2_32  ##标示使用window下的Ws2_32.lib,-l表示要链接后面

Java并发编程--6.Exchanger线程间交换数据

在两个线程之间定义同步点,当两个线程都到达同步点时,他们交换数据结构,因此第一个线程的数据结构进入到第二个线程中,第二个线程的数据结构进入到第一个线程中 在生产者-消费者情境模式中它包含了一个数缓冲区,一个或者多个生产者,一个或者多个消费中 下面是生产者和消费者的示例: /** * 生产者和消费者交换数据 */ public class MyExchanger { public static void main(String[] args) { Exchanger<List<String>

Java多线程之~~~使用Exchanger在线程之间交换数据[这个结合多线程并行会有解决很多问题]

http://blog.csdn.net/a352193394/article/details/39503857 具体看 http://www.cnblogs.com/donaldlee2008/p/5290169.html java 线程池 并行 执行   http://www.cnblogs.com/donaldlee2008/p/5290169.html Java多线程之~~~使用Exchanger在线程之间交换数据 2014-09-23 20:48 1205人阅读 评论(0) 收藏 举报

Linux 4TB*2 组成JBOD 使用winhex手工分析重组恢复数据案例

Linux 4TB*2 组成JBOD 使用winhex手工分析重组恢复数据案例 一:案例描述:2块4TB硬盘组成一个JBOD分区,系统Linux. 其中有一个硬盘损坏.   二:恢复方法: 1:先恢复损坏的硬盘. 2:用winhex分析,两块硬盘JBOD结构. 在两块硬盘上查找十六进制"53EF" 方向:向下,偏移调制:512=56,查找超极块.  3:找到正确的超极块   4:打开查看中模板查看超极块信息.这里主要查看这个JBOD分区的,块总数与,块大小.   5:打开模板   6: