本系列博客是我假期在B站花了一天时间看了一个快速入门C++的视频,大概是4个小时,不过来回截图,整理笔记也花了一大整天;
10.指针和动态内存分配
//动态内存分配:new用于申请内存块、delete用于释放内存块
T *p = new T;
delete p;
T *q = new T[5];
delete[] q;
#include<iostream>
using namespace std;
int main(){
int *p = new int; //malloc
*p = 3;
cout << p << '\t' << *p << endl;
delete p;
p = new int;
*p = 5;
cout << p << '\t' << *p << endl;
}
#include<iostream>
using namespace std;
int main(){
int n = 4;
int *p = new int[n];
for(int i=0; i<n; i++)
p[i] = 2 * i + 1;
for(int *q=p+n; p<q; p++)
cout << *p << '\t';
cout << '\n';
char *s = (char *)p; //类型转换
char ch = 'A';
int n2 = n*sizeof(int) / sizeof(char);
for(int i=0; i<n2; i++)
s[i] = ch + i;
for(int *r=s+n2; s<r; s++)
cout << *s;
cout << '\n';
}