假如 int arr[100];我想把arr数组里的100项都初始化为1.怎么做?难道只能用循环来做,循环100次进行赋值?有没有更好的方法?
需要准备的材料分别有:电脑、C语言编译器。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,输入C语言代码:
int a[3];
memset(a, 0, sizeof(a));
printf("%d", a[0]);
printf("%d", a[1]);
printf("%d", a[2]);
3、编译器运行test.cpp文件,此时成功将数组每一项都初始化为0。
这个不行,首先语法就有错误,不能通过编译,struct template{ int i = 1;};C语言里结构体不是这样写的,结构体里的变量不能赋值。
追答只是提供类似的一个思想,呵呵。
你采纳的那个才是正解,一句memset就搞定了
c语言,给一个不知道元素个数的数组的所有元素赋相同的值
可以利用系统函数memset(数组名,初值,sizeof(数组名));来整体赋相同的初值。但是要注意:必须在程序开头引入头文件#include<memory.h>才可以使用系统中定义的memset函数。如同要使用sin()等数学函数时必须引入头文件#include<cmath>一样。
c语言数组的初始化表示方法
一、静态初始化 在C语言中,可以在声明数组的同时进行初始化,称为静态初始化。例如:c int array[5] = {1, 2, 3, 4, 5};这里声明了一个整型数组`array`,并初始化为五个值。数组的大小由声明的数值决定,初始化列表中的值按顺序分配给数组的每一个元素。二、部分初始化 如果知道数组的部分...
C语言中定义数组时对其全部初始化为1的问题
这种写法不可以,要写成 int a[10] = {1,1,1,1,1,1,1,1,1,1};你的那种只是a[0]=1;而a[1]~a[9]都是默认值哦!
C语言里怎么把数组里的所有的元素取相等的值
for(int i=0;i<N;i++)\/\/N是数组大小 { a[i]=b;\/\/b是那个值 }
C语言怎么使用循环给所以的数组成员赋值同一个数。
string.h中的memset()void * memset(void * s, int ch, size_t n)s为首地址指针,ch为填充数,n为字节数 2比如填充int a[20];memset(a, 0, sizeof(int) * sizeof(a))循环就是 int a[20], i;for(i = 0; i < sizeof(a); i++)a[i] = 0;这里需要注意到是如果数组a作为...
C语言,如何将一个数组里的所有元素按顺序合并成一个字符串,求例程
\/\/=== \/\/假定数组SendByte[] 每个元素的值 不大于 0xff, 那么1个int 可用 1 字节 传送:for (i=0;i<5;i++) sb[i]= (unsigned char) SendByte[i];sb[5]='\\0';for (i=0;i<5;i++) printf("%x ",sb[i]);printf("\\n");return 0;} ...
【C语言】初始化数组,C语言中初始化特定列表和元素!
数组的其他 4 个元素会被初始化为 0,按照本例情况,为{0,""}。可以利用字符串字面量来初始化数组 char、wchar_t、char16_t 或 char32_t。借助于 C99 新增的元素指示符(element designator),可以把初始化器关联到特定的元素。当需要把特定的元素与初始化器关联时,将其索引值放在方括号内。
c语言中怎么把一维数组初始化为全零啊,不用循环
1.int arr[10]={0};如果只对数组的一部分进行初始化,则编译器将把其他元素设置为0。因此,当只将第一个元素初始化为0时,编译器会自动将其他元素设为0 (就像前一句说的那样)。2.int arr[31]={};3.用memset函数在程序开始时初始化数组。比如:int arr[1024];memset(arr, 0, 1024); \/\/...
c语言中怎么把一维数组初始化为全零啊,不用循环
在C语言中,有多种方法可以快速将一维数组初始化为全零,无需使用循环。以下是三种常见的方法:1. 直接使用花括号初始化:首先,你可以直接在定义数组时指定所有元素为0,如:int arr[10]={0};。这种方法适用于数组的长度已知且希望所有元素均为0的情况。如果仅初始化部分元素,编译器会自动为剩余...
C语言字符数组如何初始化?
C语言允许用字符串的方式对数组作初始化赋值。例如:staticcharc[]={'c','','p','r','o','g','r','a','m'};可写为:staticcharc[]={"Cprogram"};或去掉{}写为:staticcharc[]="Cprogram";当对全体元素赋初值时也可以省去长度说明。例如:staticcharc[]={`c`,``,`p`,`r`...