c语言如何先声明后初始化字符数组

c语言,字符数组的初始化有两种方式:
char str[10] = “hello”;
或者 char str[10] = {'h', 'e', 'l', 'l', '0', '\0'};
但是我声明字符数组的时候不想初始化,在使用时再初始化,如何实现?
谢谢高人指教!
一个一个元素的赋值当然可以。但如何用一条语句对字符数组赋值?

在定义的时候就对数组进行赋值操作称为初始化;

先定义后赋值并不能称为初始化,只能叫做对数组进行赋值操作。


举例如下:

char a[]="abcd";  // 定义(声明)字符数组a,并进行初始化
// 以下为数组的赋值操作
char b[5];  // 定义(声明)一个字符数组b
// 对字符数组每个元素进行赋值
b[0] = 'a';  
b[1] = 'b';
b[2] = 'c';
b[3] = 'd';
b[4] = 'e';

温馨提示:内容为网友见解,仅供参考
第1个回答  2010-06-05
初始化数组语句:
memset(str,0,sizeof(str));
第2个回答  2010-05-23
直接char a[10];即可,后边用时在赋值就行了!
例如:
#include "stdio.h"
main()
{
int i;
char a[10];
for(i=0;i<10;i++)
scanf("%d",&a[i]);/*循环赋值,自己手动输入数组中元素*/

}
第3个回答  2010-05-29
利用循环!
char str[n] ;
for(i=1,i<=n;i++)
第4个回答  2010-05-23
char str[10];

c语言如何先声明后初始化字符数组
先定义后赋值并不能称为初始化,只能叫做对数组进行赋值操作。举例如下:char a[]="abcd"; \/\/ 定义(声明)字符数组a,并进行初始化\/\/ 以下为数组的赋值操作char b[5]; \/\/ 定义(声明)一个字符数组b\/\/ 对字符数组每个元素进行赋值b[0] = 'a'; b[1] = 'b';b[2] = 'c';b[...

C语言数组的初始化表示方法
1、定义的同时进行初始化,我们同样用数组的初始化引出结构体的初始化,我们知道数组在定义的同时进行初始化的代码如下:int nums[] = {1, 3, 5};由此可推出结构体在定义的同时进行初始化的代码如下:struct Person p = {"lee", 23, 1.8};2、先定义再进行初始化,这种初始化方法其实昨天的内...

c语言数组的初始化表示方法
在C语言中,可以在声明数组的同时进行初始化,称为静态初始化。例如:c int array[5] = {1, 2, 3, 4, 5};这里声明了一个整型数组`array`,并初始化为五个值。数组的大小由声明的数值决定,初始化列表中的值按顺序分配给数组的每一个元素。二、部分初始化 如果知道数组的部分值,可以只初始...

c语言中数组的初始化
3、可以用memset函数在程序开始时初始化数组。这条命令这在已经修改了数组之后又想将它重置为全0特别有用。intarr[1024];arr[5]=67;memset(ZEROARRAY,0,1024);//ThiswillreinitializealltoZERO

c语言字符数组使用方法
对C语言处理字符串的方法由以上的了解后,再对字符数组初始化的方法补充一种方法――即可以用字符串常量来初始化字符数组:char str[ ]={"I am happy"}; 可以省略花括号,如下所示 char str[ ]="I am happy";注意:上述这种字符数组的整体赋值只能在字符数组初始化时使用,不能用于字符数组的...

c语言中如何引用二维数组
1.先声明再初始化 例如:\/\/1.声明 int[] nums;\/\/初始化 nums = new int[5];2.声明并初始化 例如:\/\/2.声明、初始化 int[] nums = new int[10];3.创建数组同时赋值 例如:\/\/3.创建数组同时赋值 String[] names=new String[]{"大名","小米","夏雨荷"};int[] ages=new int[]{...

C语言数组的初始化表示方法
不是inta[] 而是例如int a[10]这种。括号内一定要有个常量数字。我们可以这样定义 define N 5 int a[N]这表明了数组名为a;数组有5个元素;分别是a[0]到a[4];对于数组来说;数组是变量的集合,因此数组也具有与变量相同的数据类型和储存类型。数组的类型就是它所有的变量的类型。在定义数组...

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语言定义一个比较大的字符数组,然后从键盘进行初始化数组值,输出输入...
include <stdio.h> int main(void){ char ch[100]={};int i=0,count=0;scanf("%s",ch);while(ch[i]!='\\0'){ count ++;i ++;} printf("%d\\n",count);return 0;}

C语言:先输入一行字符,将其存放在字符数组中,再输入一个指定字符,在字...
ch = getchar(); \/\/ 读入一个字符 int i;for (i = 0; i < strlen(str); i++) { \/\/ 遍历字符数组 if (str[i] == ch) { \/\/ 如果找到了指定字符 printf("指定字符在字符数组中第一次出现的位置:%d\\n", i); \/\/ 输出下标 return 0; \/\/ 程序结束 } } \/\/ 如果没有找到...

相似回答