C++ 动态申请列数行数不确定的变长二维数组(主要是行数不确定)
主要是看与动态申请二维数组的区别
动态申请行数 列数确定的二维数组;
行数 列数确定
int n=k1,m=3; //n行 m列 int **scan_point; //动态申请二维数组 scan_point=new int*[n]; for(int i=0;i<n;i++) scan_point[i]=new int[m];
行数不确定 列数确定
#include<iostream> #include<fstream> #include<cmath> #include <malloc.h> #include <string> using namespace std; int main() { fstream fin_0("dian.txt",ios::in); char c; int lineCnt=0; while(fin_0.get(c)) { if(c==" ") lineCnt++; } cout<<lineCnt+1<<endl; fin_0.close();/////////////////////计算文件的行数 int **dian_point=(int **)malloc(sizeof(int) * (lineCnt+1));//用变量lineCnt定义scan数组的行数 int f=4;//定义scan数组的列数 for(int i=0;i<lineCnt+1;i++) dian_point[i]=new int[f]; //每一行中申请f个int空间 ifstream fin_1("dian.txt"); //打开文件//读入数字 for(int i=0;i<lineCnt+1;i++) for(int j=0;j<4;j++) fin_1>>dian_point[i][j]; fin_1.close(); }
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: c++函数如何返回多值,返回数组的函数该如何调用
- 下一篇: c++计算一维数组中的最大元素