大家好,今天小编关注到一个比较有意思的话题,就是关于c语言数组清零的问题,于是小编就整理了3个相关介绍c语言数组清零的解答,让我们一起看看吧。
在C语言中如何把数组清空?
堆上申请(也就是c++中new出来的)的就,需要自己手动释放内存(free,C++中是delete[]数组名):memset(变量地址,0x00,大小);栈上申请的,就是函数执行完就会自动释放的数组名[100]={0};
c语言怎么实现一行输出6个数?
输出6个数再换行即输出时每行6个数,可以***用循环来实现该效果。以输出整型数组元素,每行6个为例,代码可以写作:
inta[100];inti;for(i=0;i<100;i++){printf(34;%d,",a[i])
;if(i%6==5)printf("\n")
;//因为i是从0开始计数,所以每次i%6为5时换行,实现每行6个效果。}
在C语言中,我们可以利用循环来实现一行输出6个数的需求。具体地,我们可以定义一个长度为6的数组,每次循环依次将要输出的数字存进数组中,当数组填满时,就输出一行,然后清空数组继续循环。
从代码实现上来说,可以用for循环来进行迭代,每次循环在终端上输出数组中的所有元素即可。通过这样的方式,我们能够方便地实现一行输出6个数的。需要注意的是,如果要输出的数字数量不是6的倍数,最后一行的数字数量可能会不足6个,需要进行特殊处理。
c++如何确认数组的元素为空?
这无法确认,除非用户自己规定了记号,当数组里有规定的记号时就认为空了,比如空字符串就是字符数组的第一个元素为'\0'的字符串。一般情况下是这样处理的:当数组里的数据已经失去存在的意义时,就认为它空了,可以用新的数据来覆盖了——根本没有“清空”的必要,也不可能真正清空,任何符号在数组里其实都是“数据”。所以数据只有有效与无效之别,没有有数与无数之分。有时候,希望数组里一开始或在运行中的某个时刻成为全0或其他符号,那实际上就是后续代码需要的数据,并不是“清空”的意思。对于静态声明的数组,可以这么做:
//#include "stdafx.h"//If the vc++6.0, with this line.
#include "stdio.h"
int main(void){
int a[10]={1,2,3,4,5,6,7,8,9,10},i,f=1<<sizeof(int)*8-1;//用最小的int数做空标记
for(i=0;i<10;printf("%3d",a[i++]));//数组a中的数据使用完毕
printf("\n");
a[0]=f;//认为a数组空了
if(a[0]==f)//检测到a中数组无效了,就可重新输入数据
for(i=0;i<10;scanf("%d",a+i++));
到此,以上就是小编对于c语言数组清零的问题就介绍到这了,希望介绍关于c语言数组清零的3点解答对大家有用。