www.5615.net > C++中如何定义动态的字符串数组?

C++中如何定义动态的字符串数组?

string *a=new string[number]; 不要忘了delete[] a; 动态数组建议用vector vector<string> a;// 默认大小 vector<string> v(number);//指定大小(可再扩充的) 可以用a[i]访问、a.push_back("sdfs")扩充;

你好!char *towns[][]=NULL;在要用到的时候对这个进行付值就行了如有疑问,请追问.

最简单的办法是使用STL库中的vector.如果用VC,也可以用CArray.自己定义的话可以参考vector或CArray的代码.思路是:首先是动态申请一块内存,然后根据需要插入删除数据项或重新申请更大的内存并拷贝数据.

以int数组为例int *pArray = new int[10];memset(pArray, 0x00, 10); // 别忘了初始化

需要动态分配内存.比如你要定义一个长度为10的字符串数组,你可以这样定义:char* array[10]; 数组中的每个元素都是一个指向字符的指针.然后对其进行初始化,使各指针为空:for ( int i = 0; i < 10; i++ ) array[i] = null; 为数组中的某一元素

你可以用new 和 delete组合来分配存储空间 比如: int n; int *a=new int[n]; 不过你要记得在最后用delete释放掉哦!!!

使用new!给你一个例子:char *p=new char[num];//num可以是变量或变量表达式delete []p;//最后删除

创建动态的 用new关键字 释放用 delete 例: #include<iostream>using namespace std;void main(){ int n; int *a; cout<<"请输入你要创建数组元素的大小"<<endl; cin>>n; a=new int [n];}

c++里加上头文件string.h 就可以直接用string str[10];这样定义10个字符串了 定义时就可以赋值了. 如:string str[3]={“aaaa”,"bbbb","cccc"}; 你可以尝试用cout<<str[1]<<endl;看结果.

char *p=new char[m]; 记得delete[] p; 如果是int也是一样的

网站地图

All rights reserved Powered by www.5615.net

copyright ©right 2010-2021。
www.5615.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com