C++怎么让一个数组是空的

比如定义一个数组ints[50],让s[50]内没有值。... 比如定义一个数组int s[50],让s[50]内没有值。 展开
 我来答
kaixingui2012
2015-10-27 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6388万
展开全部

C++中定义一个数组,没有绝对空的概念。

因为,定义数组后,系统就会给数组分配内存空间,该空间可能以前被其它程序使用过,其中留有原来写入的数据(对于本程序来说,就是垃圾数据),也可能没有被使用过,其内存数据值为0.

如果想在定义数组后,将数组内容清为0,则可以采用以下三种方法:

  • 初始化为0

int arr[10]={0}; //该语句置第一个元素为0,其余元素系统自动清为0.
  • 手工逐个元素置0

int arr[10]; //只定义,未初始化
for( int i=0;i<10;i++ ) //采用循环遍历数组,逐位赋值为0
    a[i]=0;
  • 采用memset()函数置数组元素为0

#include <string.h> //memset()函数头文件
int arr[10]; //只定义,未初始化
memset( arr, 0, sizeof(arr) ); //memset函数,将从arr开始的sizeof(arr)个字节置为0
GIS_PASSION
2011-12-27 · 超过19用户采纳过TA的回答
知道答主
回答量:64
采纳率:0%
帮助的人:42.5万
展开全部
定义的数组没有绝对空的这个概念。数组只要定义了,就分配了内存空间。分配的内存空间中的值是不确定的,可以对数组进行初始化。比如都使数组元素为0,int a[10]={0};
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
linansx037
2011-12-27 · TA获得超过503个赞
知道小有建树答主
回答量:192
采纳率:100%
帮助的人:79.8万
展开全部
c++中任何东西都是对象,任何对象在建立时都必须进行初始化,所以不存在绝对的空值。通常来说,指针的空值为null,数值的空值为0,字符串的空值为“”。可以用这些对其进行初始化。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
parkerzm
2011-12-27 · 超过42用户采纳过TA的回答
知道答主
回答量:119
采纳率:0%
帮助的人:122万
展开全部
没有值是什么意思,0也是值,清零而已
1。
int s[50] = {0};
2.
int s[50];
memset(s, 0, 50)
望采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-12-27
展开全部
int s[50]={NULL};

或者:
#include<memory.h>

int s[50];
memset(s,0,sizeof((int)*50));
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(8)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式