永发信息网

c++ 如何让数组的元素个数是可以变化的?

答案:5  悬赏:0  手机版
解决时间 2021-06-01 20:03

在需要数组元素未知的情况下,该怎么弄??

谢谢,知道的朋友说一下下!

最佳答案

你好, C++中可以利用new 动态创建数组.


具体格式为: int *p=new int[n]; // n的值可以从键盘获取.


举个例子:


#include <iostream>
using namespace std;


int main()
{
int n; //n可以随便是任何数. 可以指定,也可以从键盘输入.
cin>>n; //输入数组的长度.


int *p=new int[n+1]; //动态创建数组. 长度+1是为了增加结束符. 如果用下标输出就不用+1.


for(int i=0;i<n;++i) //初始化数组;
cin>>p[i];



//如果创建数组时长度不加1,也就是不增加结束符,那么就可以直接用下标输出.
//利用输入的长度,作为for循环的上界值.下标从0开始.
for(i=0;i<n;++i)
cout<<p[i]<<"\t";

cout<<endl;


//利用指针输出,对*p进行判断,如果*p等于'\0'结束符的话,就结束for循环.
p[i]='\0'; //结束符.
for(;*p;++p)
cout<<*p<<"\t";
return 0;
}



有何问题请追问.

全部回答
定义数组时这样写,S[].看清里面什么都没有,是S[]

INT数组做个例子:

int[] i; //只声名i是一个INT数组,它的大小是不定的,此时它是空的。

i[0]=2008;//这时它有一个元素。

i[1]=2009;//它有两个了。

在未知的情况下,建议用指针,动态数组vb里面有,c家族里面好像没有

用容器 vector() . 比如resize()函数,调整大小的.

或者使用链式储存的数组.那样也不叫数组了...

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
一天中,哪个时间段锻炼身体最科学,有效?
N72怎么样啊?
打印机色带芯怎么换,爱普生630K打印机色带盒
求一本可以讓人心情舒暢的好書
实验室制甲烷的化学方程式?
DNF还有前途么
美羊羊怀孕,孩子是谁的。
游戏人生好友邀请我不用我同意吗
翻译:我们可以用海水制盐.
至上励合的情况
求同时满足不等式2(5x 1)/3-x
龙之谷30级主线任务决战前夜要去江下游淹没地
跪求牛人中国达人秀饶舌王寿君超RAP,MP3
请问《天涯织女》里的那个皇帝是宋朝的哪个皇
找个Q宠大乐斗 帮派
推荐资讯
显 卡: 512M G105M独显 是什么意思?
怎么样让喜欢你的人喜欢你?
CAD餐厅吊顶图
现在北京的女孩都在干什么工作?很是纳闷
十五岁的爱情能长久吗
诺基亚2730c下载哪个版本的手机QQ
尿频,还有一些妇科症状
身高怎么能变矮些?
念建筑工程必须上高中吗?
我是长脸,想剪短发,稍微 长一点点的,要怎
梦见自己生了个儿子
小学1年级逻辑题,有多少人知道答案??
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?