C++/堆内存的概念和操作方法
C++数组大小必须定义好,通常是分配在静态内存空间或者栈的内存空间的,实际工作中,需要动态的为数组分配大小
C++ 则用 new delete
C++ 字符指针数组及指向指针的指针的含义
结果:
abc|cde|fgh
abc
cde
fgh
Process returned 0 (0x0) execution time : 0.468 s
Press any key to continue.
C++数组大小必须定义好,通常是分配在静态内存空间或者栈的内存空间的,实际工作中,需要动态的为数组分配大小
#include "iostream"
using namespace std;
int main(int argc, char const *argv[])
{
int arraysize;
int *array;
cin>>arraysize;
array=(int*)malloc(arraysize*sizeof(int));
for(int i=0;i<arraysize;i++)
{
array[i]=i;
}
...............
free(array);
return 0;
}
C++ 则用 new delete
C++ 字符指针数组及指向指针的指针的含义
#include <iostream>
#include <string>
using namespace std;
void print_char(char *array[],int len)
{
for(int i=0;i<len;i++)
cout<<*array++<<endl;
}
int main(int argc, char const *argv[])
{
char *a[]={"abc","cde","fgh"};
char *b=a;
cout<<*b<<"|"<<*(b+1)<<"|"<<*(b+2)<<endl;
char *test[]={"abc","cde","fgh"};
int num=sizeof(test)/sizeof(char*);
print_char(test,num);
return 0;
}
结果:
abc|cde|fgh
abc
cde
fgh
Process returned 0 (0x0) execution time : 0.468 s
Press any key to continue.