65,211
社区成员
发帖
与我相关
我的任务
分享
#include <stdlib.h>
#include <stdio.h>
const int a1 = 100;
const int a2 = 200;
void FillCol(int **p_array, int row, int col);
void FillRow(int **p_array, int row);
void main()
{
int i,j;
int **p_array;
//开辟二维数组空间
p_array = (int**)calloc(a1,sizeof(int *));
for(i=0; i<a1; i++)
p_array[i] = (int*)calloc(a2,sizeof(int));
//填充
FillRow(p_array, 0);
//输出
for(i=0; i<a1; i++)
{
for(j=0; j<a2; j++)
printf("%d ", p_array[i][j]);
printf("\n");
}
//释放空间
for(i=0; i<a1; i++)
free(p_array[i]);
free(p_array);
}
void FillCol(int **p_array, int row, int col)
{
if(col<a2)
{
p_array[row][col] = 50;
FillCol(p_array, row, col+1);
}
}
void FillRow(int **p_array, int row)
{
if(row<a1)
{
FillCol(p_array, row, 0);
FillRow(p_array, row+1);
}
}
int * lp = new int[100*200];
memset(lp, 50, 100 * 200);
#include <algorithm>
#include <iostream>
using namespace std;
void fun(int &data)
{
data = 50;
}
int main()
{
int * lp = new int[100*200];
for_each(lp, lp+100*200, fun);
cout << lp[10] << endl;
return 0;
}