当前位置:首页 » 编程语言 » c语言如何给字符串赋初值为零
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言如何给字符串赋初值为零

发布时间: 2023-02-24 23:14:18

1. c语言字符数组如何初始化

C语言允许用字符串的方式对数组作初始化赋值。例如:

static char c[]={'c',' ','p','r','o','g','r','a','m'}; 可写为:

static char c[]={"C program"}; 或去掉{}写为:

static char c[]="C program";

当对全体元素赋初值时也可以省去长度说明。例如:static char c[]={`c`,` `,`p`,`r`,`o`,`g`,`r`,`a`,`m`};这时C数组的长度自动定为9。

(1)c语言如何给字符串赋初值为零扩展阅读:

数组的使用规则:

1.可以只给部分元素赋初值。当{ }中值的个数少于元素个数时,只给前面部分元素赋值。例如:static int a[10]={0,1,2,3,4};表示只给a[0]~a[4]5个元素赋值,而后5个元素自动赋0值。

2.只能给元素逐个赋值,不能给数组整体赋值。例如给十个元素全部赋1值,只能写为:static int a[10]={1,1,1,1,1,1,1,1,1,1};而不能写为:static int a[10]=1;请注意:在C、C#语言中是这样,但并非在所有涉及数组的地方都这样,数据库是从1开始。

3.如不给可初始化的数组赋初值,则全部元素均为0值。

4.如给全部元素赋值,则在数组说明中, 可以不给出数组元素的个数。例如:static int a[5]={1,2,3,4,5};可写为:static int a[]={1,2,3,4,5};动态赋值可以在程序执行过程中,对数组作动态赋值。这时可用循环语句配合scanf函数逐个对数组元素赋值。

网络-数组

2. C语言里有没有把数组元素全部赋值为0的函数

方法一、在定义时赋初值

1、静态数组

int[3][3]={0};

2、动态数组

int**a=newint*[n];

for(inti=0;i<n;i++)

a[i]=newint[m](0);

方法二、在定义完后赋值

for(inti=0;i<n;i++)

for(intj=0;j<m;j++)

a[i][j]=0;

方法三、用一个循环吧数组所有元素设置为0:

intarr[100];

inti=0;

for(i=0;i<100;i++)

arr[i]=0;//ThiswillmakeallZERO

方法四、

1、全局变量和静态变量初始化时会自动被设置为0。如果们声明全局变量,那么在运行前会变成全0。

intarr[1024];//Thisisglobal

intmain(void)

//statements

2、对于局部数组简写的初始化语法。如果一个数组被部分初始化,没有被初始化的元素会被自动设置为相应类型的0。这是编译器自动完成的。可以这样写:

intmain(void)

intarr[1024]={0};//ThiswillmakeallZERO

//statements

3、可以用memset函数在程序开始时初始化数组。这条命令这在已经修改了数组之后又想将它重置为全0特别有用。

intarr[1024];

arr[5]=67;

memset(ZEROARRAY,0,1024);//ThiswillreinitializealltoZERO

3. C语言关于数组赋初值的问题char buff[10]={0};

需要注意的是:char
buff[5]={0};和char
buff[5]={'0'};是两个完全不同的概念:
char
buff[5]={0};的赋的是一个字符串的结束符,而不是一个字符'0';
char
buff[5]={'0'};才是给第一个字符赋值为'0'。
大家喜欢用char
buff[5]={0};主要是想制造一个空的字符串,
你调试一下就知道了:
如果这样写:
#include

void
main
{
char
buff[5]={0};
printf("%s",buff);
}
是没有任何输出的,因为printf遇到的buff的第一个字符就是个字符串的结束符'\0'
而如果这样写:
#include

void
main
{
char
buff[5]={'0'};
printf("%s",buff);
}
才会看到输出了一个'0'
这才是你理解的给第一个单元赋值为‘0’。
char
buff[5]={0};是一种定义空字符数组的严谨的写法!

4. C语言中怎么字符串赋值

需要准备的材料分别有:电脑、C语言编译器。

1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。

5. 怎么进行字符串赋值C语言

在C语言中,字符串的赋值主要有两种方法,第一种是通过指针的方式直接赋值,第二种是通过数组直接赋值。

1、指针式赋值。

6. c语言中怎样给整型和字符型赋空值(NULL)

NULL在32位操作系统的内存中的表现就是0x0000 0000 0000 0000 0000 0000 0000 0000,即32位都为0,其值其实为0
所以,有
int i = 0; //让i为NULL
char c = '\0'; //'\0'在内存中的表现也为一串0,等价与0和NULL

7. C语言字符串可以这样赋初值么

可以的,不过这个写法不好,一般这样
char a[4*n]={0}; //段散32位CPU内存对唤如齐,且初始化和燃启为0
strcpy(a,"abcdedf.....");

8. c语言字符串赋初值

scanf("%c",&s[i]); /*这条语句就是要你输入字符*/
for(i=0;i<7;i++)
printf("%c",s[i]); /*这里是输出你输入的字符
二,三楼的说的都错了,你运行程序时直接可以给数组赋初值的野孙
我绝脊或想你没搞明白的是到底上面输入的是字符,还是字符串吧
%c格式输入输出的是单个字符
%s格式输入输出的是一个字符串
因为你上面的是并伍字义的一个数组,所以输入输出的时候都是string,%c格式是将单个字符依次给数组,输出时也是单个输出的