C语言 自己的杂记,随便写的,备忘用

2023-11-01

C语言的主函数声明:

int main(int argc, char *argv[])
//或者
int main(void)

指针:

int *foo;
//并不是生命一个名为*foo的变量,变量是foo,foo的类型是“指向int的指针”。


int* foo, bar;
//并不是声明两个“指向int的指针”,一个是*foo,一个是bar;


//数组:p[i]是*(p+i)的简便写法。下标运算符[]原本只有这种用法,和数组无关。
//所以:p[i]可以写成i[p]。但是别这么用!



int func(int *a);		//写法1
int func(int a[]);		//写法2
int func(int a[10]);    //写法3
//写法2和3是写法1的语法糖

指向函数的指针:

//函数原型:
int func(double d);
//保存指向此函数的指针的变量的声明如下:
int (*func_p)(double);
//然后写成下面这样,就可以通过func_p调用func,
int (*func_p)(double);  //声明
func_p = func;			//将func赋给func_p
func_p(0.5);			//此时,func_p等同于func
其中:

int (*func_table[])(double) = {
	func0,
	func1,
	func2,
	func3,
};
	.
	.
	.
	.
func_table[i](0.5);             //调用func_table[i]的函数,参数为0.5
//使用上面的方法,不用写很长的switch case,只需要通过i的值就可以对处理进行分配!
int (*func_p)(double);          //指向函数的指针
int (*func_table[])(double);	//指向函数的指针的数组






本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言 自己的杂记,随便写的,备忘用 的相关文章

  • 金蝶EAS-BOS二开详细过程

    我们在做金蝶的项目时 经常会要求更改其项目本身的代码 但是它的代码都被封装在jar包中 我们应该怎么做呢 将要二开的单据实体或者facade 复制到我们的本地项目中 选中你要修改的具体实体或者facade 右键点击复制 重命名 复制到我们的
  • 配置Hadoop集群+WordCount案例

    配置Hadoop集群 配置环境变量 etc profile export HADOOP HOME bigData hadoop 2 8 0 export PATH P A T H PATH PATH HADOOP
  • cannot read property ‘line‘ of undefined

    环境 vite vue3 ts 这个问题的点还挺不明显的 翻了翻代码修改记录 发现是漏了结尾的 lt style gt 标签 做好本地代码管理真的很重要
  • gradle 两种更新方法

    第一种 Android studio更新 第一步 在你所在项目文件夹下 你项目根目录gradlewrappergradle wrapper properties 替换 distributionUrl https services gradl

随机推荐

  • 【算法/剑指Offer】地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。

    题目描述 地上有一个m行和n列的方格 一个机器人从坐标0 0的格子开始移动 每一次只能向左 右 上 下四个方向移动一格 但是不能进入行坐标和列坐标的数位之和大于k的格子 例如 当k为18时 机器人能够进入方格 35 37 因为3 5 3 7
  • java螺旋数组

    1 程序设计题 对于一个 n 行 m 列的表格 我们可以使用螺旋的方式给表格依次填上正整数 我们称填好的表格为一个螺旋矩阵 例如 一个 4 行 5 列的螺旋矩阵如下 1 2 3 4 5 14 15 16 17 6 13 20 19 18 7
  • jquery 等待3秒钟执行函数

    setTimeout function div2 hide 3000
  • CF1249B2 Books Exchange (hard version) 题解

    题目大意 共 q q q 组询问 对于每一组询问有长度为 n n n 的序列 p p
  • Linux进程内核栈

    进程创建的时候Linux内核会创建内核栈 arm手册也要求内核态有单独的栈 如应用进程在用户态通过系统调用陷入内核态的时候 上下文信息 如cpu寄存器 需要有个地方保存 如此 从内核态切换回用户态时候 能继续从系统调用之后的代码开始执行 这
  • JSON数据采集(采集JSON格式数据)

    如果想要采集JSON格式数据的网页怎么办 Json数据格式的页面 常出现于以下场景 1 滚动加载页面采集 瀑布流加载采集 2 网址没有变化的页面采集 3 采集点击加载更多的页面 这些页面我们都可以尝试使用简数采集器来实现JSON数据采集 1
  • Java 1.5, 1.6, 1.7, 1.8的区别

    对于很多刚接触java语言的初学者来说 要了解一门语言 最好的方式就是要能从基础的版本进行了解 升级的过程 以及升级的新特性 这样才能循序渐进的学好一门语言 今天先为大家介绍一下JDK1 5版本到JDK1 7版本的特性 希望能给予帮助 JD
  • MybatisPlus自定义sql多表关联分页条件查询

    MybatisPlus自定义sql多表关联分页条件查询 mp封装了crud但是对应复杂sql还是需要自己定义 网上对于多表分页查询的mp描述不是很清楚 我在这里重新写一篇文章 1 数据库准备 需要实现的sql是两表关联条件查询 select
  • MeterSphere 至善篇

    简介 MeterSphere 是一站式开源持续测试平台 涵盖测试跟踪 接口测试 UI 测试和性能测试等功能 全面兼容 JMeter Selenium 等主流开源标准 有效助力开发和测试团队充分利用云弹性进行高度可扩展的自动化测试 加速高质量
  • 自动适配手机网页 适配手机的网站网页 网页自动适配

    自动适配手机网页 适配手机的网站网页 网页自动适配 Category xy309 Time 2012 11 21 8 54 26 点击 14次 Source 兴移 允许网页宽度自动调整 自适应网页设计 到底是怎么做到的 其实并不难 首先 在
  • (面试题)如何解决MySQL慢查询

    慢查询出现原因以及解决方法 扫描多余的数据 避免使用select from xxx 跨多表扫描数据 可以减少join 并适当反范式化 增加冗余数据 以空间换时间 索引没有建立 索引优化不当 或未应用到最佳索引 联合索引使用最左匹配 CREA
  • 【无标题】UE5从百度盘下载UEC++项目到本地所遇到的一些问题和解决方法

    从百度盘里下载UEC 项目到自己的电脑 如果直接用VS打开C 会报打不开源文件等错误 如下图所示 解决方法 删除 图中用红线框的文件夹 若是VS 版本不同也可以把 sln 文件删除 删除后再生成c 项目 若是打开VS 编译是出现以下弹窗 则
  • 一级指针

    一级指针是一种指针 它指向一块内存地址 这块内存中存储的是另一个变量的内存地址 使用一级指针 你可以间接访问到这个变量 在 C C 中 可以使用一级指针来动态分配内存 改变函数参数的值 或者通过指针传递数组 下面是一个使用一级指针的例子 i
  • Java基础 时间相关类小结[Timestamp,Date,Calendar]

    Java基础 时间相关类 Timestamp Date Calendar 前言 一 Timestamp 时间戳 二 Date 日期 三 Calendar 日历 四 Timestamp Date Calendar的转换 五 日期之间的比较 前
  • 计算机组成原理学习笔记——六、总线

    文章目录 计算机组成原理学习笔记 六 CPU总线 6 1 总线概述 6 2 总线仲裁 6 3 总线操作和定时 6 4 总线标准 小结 计算机组成原理学习笔记 六 CPU总线 6 1 总线概述 总线的猝发传送方式 一个总线周期内传输存储地址连
  • iOS架构师_架构模式(代理,block,通知,MVC,MVP,MVVM)

    1 什么是架构 没有明确的定义 属于设计的一方面 没明确的把设计和架构进行区分 它可以小到类与类之间的交互 大到不同模块之间 以及不同业务之间的交互 都可以从架构的层面去理解它 所有架构和设计模式的目的都是为了解耦合 2 基本的架构基础 案
  • windows上通过cmake-gui生成pytorch工程

    在Windows下通过cmake gui exe生成不带cuda的Torch sln工程操作步骤 PyTorch版本使用1 8 1 首先可以先通过打开cmake gui exe 指定pytorch源代码目录和生成vs2017工程的位置 然后
  • 跨库的触发器

    CREATE TRIGGER addtomsgdown ON dbo TABLE1 FOR INSERTASdeclare usernumber as varchar 11 declare messagecontent as varchar
  • Figma 常用功能及快捷键

    Figma 常用功能及快捷键 参考视频 https www bilibili com video BV1Da4y177ks t 27 Figma 快捷键 https figmacn com resource all figma shortc
  • C语言 自己的杂记,随便写的,备忘用

    C语言的主函数声明 int main int argc char argv 或者 int main void 指针 int foo 并不是生命一个名为 foo的变量 变量是foo foo的类型是 指向int的指针 int foo bar 并