C 函数与指针(function & pointer)

/*
* function.c
* 函数在C中的使用
* */ #include <stdio.h> int noswap(int x, int y)
{
/*
* 函数会将传进来的参数复制一份,所以main中的x和y和noswap函数中的x和y的地址不同
* 因而,在这个函数中对x和y的操作并不会影响到main函数中的x和y
* */
printf("在noswap函数中:\n");
printf("x的值为%d,地址为%p\n", x, &x);
printf("y的值为%d,地址为%p\n", y, &y); int tmp = x;
x = y;
y = tmp;
} int swap(int *x, int *y)
{
/*
* 在这个函数中,参数是两个指针,这两个指针存储的main函数中x和y的地址
* 因此,可以通过这两个指针,对main函数中的x和y进行调换
* */
printf("在swap函数中:\n");
printf("指针x指向的地址为%p,值为%d,指针本身的地址为%p\n", x, *x, &x);
printf("指针y指向的地址为%p,值为%d,指针本身的地址为%p\n", y, *y, &y); int tmp = *x;
*x = *y;
*y = tmp;
} int main(void)
{
int x = , y = ; printf("在main函数中:\n");
printf("x的值为%d,地址为%p\n", x, &x);
printf("y的值为%d,地址为%p\n", y, &y); noswap(x, y);
printf("经过noswap函数,x=%d,y=%d\n", x, y); swap(&x, &y);
printf("经过swap函数,x=%d,y=%d\n", x, y); return ;
}

C 函数与指针(function & pointer)的更多相关文章

  1. 指向函数的指针 ------ 函数指针(function pointer)

    函数指针: 指向函数的指针, 首先是一个指针, 这个指针指向一个函数. 函数具有可赋值给指针的物理内存地址,一个函数的函数名就是一个指针,它指向函数的代码.一个函数的地址是该函数的进入点,也是调用函数 ...

  2. 指针函数(Pointer Function)和函数指针(Pointer to Function或Function Pointer)

    一.指针函数 1.解释:指针函数很好理解:简单来说,就是一个返回指针的函数,本质是一个函数.如: int fun(int x,int y);    //这是一个普通函数的声明,返回值是一个int类型, ...

  3. 《C和指针(Pointer on c)》 学习笔记(转自:http://dsqiu.iteye.com/blog/1687944)

    首先本文是对参考中三个连接的博客进行的整理,非常感谢三位博主的努力,每次都感叹网友的力量实在太强大了…… 第一章 快速上手 1.  在C语言中用/*和*/来注释掉这段代码,这个实际上并不是十分的安全, ...

  4. 《C和指针(Pointer on c)》 学习笔记

    转载:http://dsqiu.iteye.com/blog/1687944 首先本文是对参考中三个连接的博客进行的整理,非常感谢三位博主的努力,每次都感叹网友的力量实在太强大了…… 第一章 快速上手 ...

  5. 《C++ Primer》之指向函数的指针

    函数指针是指指向函数而非指向对象的指针.像其他指针一样,函数指针也指向某个特定的类型.函数类型由其返回类型以及形参表确定,而与函数名无关: // pf points to function retur ...

  6. C语言学习笔记--函数与指针

    1. 函数类型 (1)C 语言中的函数有自己特定的类型,这个类型由返回值.参数类型和参数个数共同决定.如 int add(int i,int j)的类型为 int(int,int). (2)C 语言中 ...

  7. 【C++】函数和指针

    最近在看C++ primer plus,感觉函数与指针这一章难点比较多,记写笔记,加强理解. From C++ Primer Plus: Chapter 7 Function:C++ Programm ...

  8. STL 函数适配器(function adapter)

    函数适配器(function adapter):通过不同函数适配器的绑定,组合和修饰能力,可以实现强大的功能,配合STL泛型算法完成复杂功能. 绑定(bind) template <class ...

  9. C++-函数与指针的关系(回调函数)

    1.函数类型 C语言中的函数有自己特定的类型 函数的类型由返回值,参数类型和参数个数共同决定 ★ int add(int i, int j)的类型为int(int, int) C语言中通过typede ...

随机推荐

  1. 去除mysql里面重复的行并留下id最小的

    DELETE FROM wynews WHERE title IN (SELECT * FROM (SELECT title FROM wynews GROUP BY title HAVING COU ...

  2. vue中is的使用

    :is作用 1.动态切换不同组件 <div id="app"> <button @click="changeComponent('component1' ...

  3. [WPF]实现TextBox文本框单击全选

    原文:[WPF]实现TextBox文本框单击全选 /// <summary>         /// Void:设置获取焦点时全选文本         /// </summary&g ...

  4. Eclipse maven创建web项目报错Could not resolve archetype

    1.下载http://repo1.maven.org/maven2/archetype-catalog.xml 通过eclipse下载和网页下载我这里都比较慢,最后用的迅雷下载 2.将本地xml文件配 ...

  5. 我用python训练了一个拳皇模型,从此在各地游戏厅再也没输过!

    ​ 从世界瞩目的围棋游戏 AlphaGo ​ ​ ​ 突然袭来的回忆杀~ 今天为大家介绍一个在街机游戏<街头霸王 3>中进行模拟来训练改进强化学习算法的工具包.不仅在 MAME 游戏模拟器 ...

  6. Google工作法

    本文转自:https://www.yuque.com/heqingbao/msfy2c/zg56gm 这几天去上海参加Google开发者大会,利用空闲时间读了一本快餐书,书名叫<Google工作 ...

  7. yolov3和ssd的区别

    版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/BlowfishKing/article/d ...

  8. linux远程执行ssh禁用交互方法

    ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ${user}@${ip} ${cmd}

  9. Elasticsearch 6.x版本全文检索学习之分布式特性介绍

    1.Elasticsearch 6.x版本全文检索学习之分布式特性介绍. 1).Elasticsearch支持集群默认,是一个分布式系统,其好处主要有两个. a.增大系统容量,如内存.磁盘.使得es集 ...

  10. C# - 操作Word文档小实验

    前言 本篇主要记录:VS2019 WinFrm桌面应用程序实现对Word文档的简单操作. 准备工作 搭建WinFrm前台界面 添加必要的控件,如下图 NuGet包管理器 安装Microsoft.Off ...