C++ 函数返回二维数组

2022/1/29 12:05:37

本文主要是介绍C++ 函数返回二维数组,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

C++一个很头疼的事情就是只能返回一个值,想要返回多个值只能将这些值存在数组中,返回一个数组。

下面实现一个简单的返回二维数组的函数:

#include <iostream>
using namespace std;


int **func(int row,int col)
{	
	//初始化一个row*col的二维数组
	int **data = 0;
	data = (int**)new int*[row];   //建立row个一位数组
	for (int i = 0; i < row; i++)
	{
		*(data + i) = new int[col];   //每个一维数组的长度都是col
	}

	for (int i = 0; i < row; i++)
		for (int j = 0; j < col; j++)
			data[i][j] = i + j;     //随便定义元素

	return data;
}


int main()
{
	int row = 5;
	int col = 8;
	int **data = func(row, col);
	for (int i = 0; i < row; i++)
		for (int j = 0; j < col; j++)
		{
			if (j < col - 1)
				cout << data[i][j] << "\t";
			else
				cout << data[i][j] << endl;
		}		
	return 0;
}

输出:

0       1       2       3       4       5       6       7
1       2       3       4       5       6       7       8
2       3       4       5       6       7       8       9
3       4       5       6       7       8       9       10
4       5       6       7       8       9       10      11

其实这样用指针并不好,容易出现空指针、越界等问题。



这篇关于C++ 函数返回二维数组的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程