首页 > 后端开发 > 正文

c++的一些知识点

2023-06-26 19:22:36 | 我爱编程网

C语言自定义函数如何返回数组(下)

C语言自定义函数如何返回数组(下)

通过上一篇的讲解,相信大家已经明白直接的return数组的问题以及原因了,今天我们将详细为大家讲解在函数中返回数组的常见办法。此类问题,应用场景往往为了解决函数间相互通信,比如某个函数内处理的完的结果数据需要交接给另一个函数的情况,那么一般来说,总结有以下三种:

  1. 直接使用全局变量:这种方法最方便,但此方法打破了函数间的通信及封装的思想,所以不推荐使用,不在今天讨论范围之内。
  2. 通过堆区动态开辟内存解决:C语言中,我们通常用malloc来在堆区动态开辟内存,利用堆区“现用现开辟,用完手动收回”特点,实现灵活管理。是实际开发中的常用办法,也是我们今天的主要内容。
  3. 由调用方传入数组指针:此种方法不需要函数返回地址,而是在调用时直接 传入数组地址,委托被调用方进行操作,由于此局部变量属于调用方本身,故即便被调用方结束内存释放,也不会被影响到该数组。

下面逐个实验,对于第二种方法,由于动态开辟内存在堆区,堆区不想上一讲中局部变量在栈区存储,系统根据它的生命周期自动收回,而是手动开辟,手动释放,这样就可以完全规避问题,例子与效果见下图:

需要注意的是:记得用完free掉,防止内存泄露!

第三种方法:虽然没有在函数中返回数组,但也可以解决数组通信问题,主要思路就是调用方中定义数组,然后将地址传入,由于该内存属于调用方,而非被调用方,故被调用方在调用结束后释放掉内存也无所谓。例子程序及效果如下:

关于数组使用传递的总结,大体如上,大家有任何问题和疑问还可以联系我们!

c++的一些知识点

c++的一些知识点

一.控制符endl

  1. cout << endl;

endl是一个特殊的c++符号,有一个重要的概念:重起一行。在输出流中插入endl将导致屏幕光标移到下一行开头 同样,’ ’也是换行符

  1. cout<<"hello world"<<' ';

显示字符串时,在字符串中包含换行符,而不是在末尾加上endl,可减少输入量

  1. cout<<endl; //开始新的一行
  2. cout<<' '; //开始新的一行

cout语句也可以这样写

  1. cout<<"how do"
  2. <<"you"
  3. <<"do"
  4. <<endl;

二.c++的赋值 “=” 赋值语句将赋值给存储单元,例如:

  1. carrots = 25;

将整数25赋给变量carrots表示的内存单元。

符号’=’叫做赋值运算符。C++和C有一项不寻常的特性—可以连续使用赋值运算符。例如:

  1. int steinway;
  2. int baldwin;
  3. int yamaha;
  4. yamaha = balwin = steinway = 88;

赋值将从右至左进行。首先,将88被赋值给steinway,然后,steinway的值被赋值给baldwin,继续进行。

赋值之前可以修改变量的值,比如:

  1. carrots = carrots - 1;

三.函数部分 可以分为有返回值和没有返回值两个板块 1>用户定义有返回值的函数我爱编程网

  1. #include <iostream>
  2. using neamespace std;
  3. void simon(int);
  4.  
  5. int main()
  6. {
  7. sinmon(3);
  8. return 0;
  9. }
  10.  
  11. void simon(int n)
  12. {
  13. cout << n;
  14. }

这段程序也用到了using namespace std;(命名空间)的语句: 总之,让程序能够访问命名空间std的方法有多种,下面是其中的四种: 1>将using namespace std; 放在函数定义之前,让文件中的所有函数都能够使用命名空间std中的所有的元素。 2>将using namespace std;放在特定的函数定义中,让该函数能够使用命名空间std中的所有元素。 3>在特定的函数中使用类似using std::cout;这样的编译指令,而不是using namespace std;,让该函数能过使用指代的元素,如cout。 4>完全不使用编译指令using,而在需要使用命名空间std中的元素是,使用前缀std::,如下所示:std::cout << “I am using cout” << std::endl;

四.C++语句有多种类型,包括如下6种:

声明语句 赋值语句 消息语句:将消息发送给对象,激发某种行动 函数调用:执行函数 函数原型:声明函数的类型、函数接受的参数数量和类型 返回语句:将一个值从被调用函数那里返回到调用函数

更多相关文章关注我爱编程网:www.52biancheng.com

免责声明:文章内容来自网络,如有侵权请及时联系删除。
标签: C++
与“ c++的一些知识点”相关推荐
PHP开发要学习哪些知识?
PHP开发要学习哪些知识?

PHP开发要学习哪些知识?在目前,随着移动互联网科技不断的发展和进步,如今各种大型网站和海量的Web应用都需要到php开发,从而导致越来越多的求职人员及高校毕业生的关注,随之形成的PHP培训机构也日益增多,引导了PHP市场的火爆发展趋势。PHP也算是一门编程语言,但要和JAVA、VC++相比,那就简单多了。不过PHP应用极广,现在的大型网站,海量的WEB应用基本上都是PHP开发的。因此北大

2025-03-07 14:29:32
关于神经网络 需要学习python的哪些知识?
关于神经网络 需要学习python的哪些知识?

关于神经网络需要学习python的哪些知识?最基础的部分的话需要:线性代数,机器学习,微积分,优化等等。几乎所有操作都有矩阵运算,所以至少最基础的线性代数需要掌握建议从单一的感知机Perceptron出发,继而认识到DecisionBoundary(判别边界),以及最简单的一些“监督训练”的概念等,有机器学习的基础最好。就结果而言,诸如“过拟合”之类的概念,以及对应的解决方法比如

2024-02-17 10:44:49
Python开发要学哪些内容_python开发需要掌握哪些知识
Python开发要学哪些内容_python开发需要掌握哪些知识

Python开发要学哪些内容_python开发需要掌握哪些知识可以按照以下课程大纲学习:阶段一:Python开发基础Python全栈开发与人工智能之Python开发基础知识学习内容包括:Python基础语法、数据类型、字符编码、文件操作、函数、装饰器、迭代器、内置方法、常用模块等。阶段二:Python高级编程和数据库开发Python全栈开发与人工智能之Python高

2024-02-04 00:30:46
PHP处理数组常用的几个函数 CTF中常见的PHP知识点总结
PHP处理数组常用的几个函数 CTF中常见的PHP知识点总结

PHP处理数组常用的几个函数一、数组操作的基本函数数组的键名和值array_values($arr);获得数组的值array_keys($arr);获得数组的键名array_flip($arr);数组中的值与键名互换(如果有重复前面的会被后面的覆盖)in_array("apple",$arr);在数组中检索applearray_search("apple",$arr)

2025-02-19 03:53:26
Python的特点有哪些特点
Python的特点有哪些特点

Python编程语言的特点1、简单易学python是一种代表简单主义思想的语言,阅读一个良好的python程序就感觉像是在读英语段落一样,尽管这个英语段的语法要求非常严格。python最大的优点之一是具有伪代码的本质,它使我们在开发python程序时,专注的是解决问题,而不是搞明白语言本身。2、面向对象python既支持面向过程编程,也支持面向对象编程。在面向过程

2024-02-21 18:44:59
php是什么 初学者必知的php基础知识?
php是什么 初学者必知的php基础知识?

PHP函数代码基础知识?我们在学习PHP开发相关基础知识的时候,对于不同的开发原理以及代码的使用都是基本的能力要求。今天,天通苑电脑培训就一起来了解PHP开发基础知识中的函数代码都有哪些。array()array(value1,value2..)创建数组array_chunk(array,size,preserve_keys)把一个数分割成新的数组块[tk]arra

2024-08-03 14:47:05
php的优点有哪些
php的优点有哪些

php的优点有哪些PHP作为一种脚本语言,有以下几个优点:1.易于学习和使用:PHP的语法易于理解和上手,对初学者来说比较友好,很容易掌握。2.高度兼容性:PHP可以运行在几乎所有的操作系统上,并且支持大多数的Web服务器和数据库。3.足够的扩展性:PHP支持大量的扩展和库,各种功能模块化,方便快捷的模块化操作,可以让开发者轻松创建复杂的功能。4.开发速度快:PHP提

2024-08-23 03:00:27
php有哪些特点(php的3大特点)
php有哪些特点(php的3大特点)

php特点包括(简述php的概念和特点)php有哪些优势和特点PHP的优势包括:PHP开放的源代码所有的PHP源代码事实上都可以得到。PHP是免费的和其它技术相比,PHP本身免费且是开源代码。快捷性程序开发快,运行快,技术本身学习快。嵌入于HTML:因为PHP可以被嵌入于HTML语言,它相对于其他语言。编辑简单,实用性强,更适合初学者。跨平台性强

2024-09-24 23:23:51