c语言结构数组初始化
A. c语言中,结构体初始化和数组初始化的写法是不是一样的求解,谢谢
结构体初始化:
structnode
{//各种类型的成员;
inta;
intb'
}
intmain()
{
structnodeA//结构体类型变量A;
}
数组:
intmain()
{
inta[100];
}
这两个是不一样的
望采纳!!!
B. C语言数组的初始化表示方法
不是inta[] 而是例如int a[10]这种。括号内一定要有个常量数字。
我们可以这样定义
#define N 5
int a[N]
这表明了数组名为a;数组有5个元素;分别是a[0]到a[4];
对于数组来说;数组是变量的集合,因此数组也具有与变量相同的数据类型和储存类型。数组的类型就是它所有的变量的类型。在定义数组时,应在数组名前对数组的类型加以确定。如上面的int a[10];则表明了数组内元素均为整形。
所有当表示浮点型可以定义为例如float a[10]。 举例如下:
(2)c语言结构数组初始化扩展阅读
数组名是由用户命名的C语言标识符,要遵循标识符命名规则。数组名表示数组存储区域的首地址。数组的首地址也就是第一个元素的地址。数组名是一个地址常量,不能对它赋值。
数组名后是由方括号括起来的常量表达式,不能使用其他括号
C. 结构体数组怎么初始化
结构体数组在定义的同时也可以初始化,例如:
struct stu{
char *name; //姓名
int num; //学号
int age; //年龄
char group; //所在小组
float score; //成绩
}class[5] = {
{"Li ping", 5, 18, 'C', 145.0},
{"Zhang ping", 4, 19, 'A', 130.5},
{"He fang", 1, 18, 'A', 148.5},
{"Cheng ling", 2, 17, 'F', 139.0},
{"Wang ming", 3, 17, 'B', 144.5}
};
当对数组中全部元素赋值时,也可不给出数组长度,例如:
struct stu{
char *name; //姓名
int num; //学号
int age; //年龄
char group; //所在小组
float score; //成绩
}class[] = {
{"Li ping", 5, 18, 'C', 145.0},
{"Zhang ping", 4, 19, 'A', 130.5},
{"He fang", 1, 18, 'A', 148.5},
{"Cheng ling", 2, 17, 'F', 139.0},
{"Wang ming", 3, 17, 'B', 144.5}
};
(3)c语言结构数组初始化扩展阅读:
定义结构体数组和定义结构体变量的方式类似,请看下面的例子:
struct stu{
char *name; //姓名
int num; //学号
int age; //年龄
char group; //所在小组
float score; //成绩
}class[5];
表示一个班级有5个学生。
D. 请问C语言中的结构体中的整型数组怎么初始化
structstudent{
intnum;
charname;
floatscore[3]
}stu={1,'m',{90.1,90.2,90.3}};
这样就行了,原题中的那个不叫初始化。
E. C语言数组 初始化
1
数组可以是任何类型的,不限于int和char,结构体数组也可以
2
数组自然是为了访问方便,相同类型的一系列变量
3
局部变量未初始化的话值未知,全局的话是
0
4
多数时候给
0
就行了
F. c语言怎么初始化结构体中的数组
和正常初始化差不多 单独一个大括号括起来就可以了
比如
structA
{
inta[3];
floatb;
charc[10];
};
可以
structAa={{1,2,3},1.2,"abc"};
G. C语言结构体数组的初始化
同学,你注意到了Create()函数里面,你又定义了一句:
Listpr;
了么?这句话时关键,首先,你在main 函数(我猜应该是main吧)中写道:
Listpr1=Creat("p1",2,1);
Insert(&pr1);
看,你这个pr1是个局部变量吧?只在main()中有效的。而你上面那个Create中定义的呢?也是个局部变量,只在Create()中有效。所以,即使你在Create()中费劲全力为pr赋值。等调用完Create()后,pr还是会消亡的,回到main,时,这里的pr1就是另一个List变量了。
总而言之,Creat()里面的pr和main()里面的pr1是完全不同的两个变量。要想让他们变成一个变量。可选用指针传参。或者定义成全局变量。
另外,我一看到你的描述的那个“烫”字,就知道你用的是VC6.0吧?呵呵
H. c语言,结构体数组怎么初始化
对于数组元素很多的初始化可以使用初始化列表方法。在c语言中用于进行初始化的程序结构则称为初始化器或初始化列表。
1、初始化器
初始化器是声明器的可选部分,它由一个'='以及其后的一个表达式(或含有多个以','隔开的带圆括号表达式的单一列表)所组成。后面这一列表有时也被称为“初始化(器)列表”(initializer list)或”初始化列表”(initialization list)。
例:
public class Curry
{public string MainIngredient { get; set; }
public string Style { get; set; }
public int Spiciness { get; set; }}
2、初始化列表
一个类/结构的构造函数可以在定义中于构造函数体前包含一个初始化列表,用以给类/结构的元素赋初值。
例:
class foo
{public:
foo(string s, int i):name(s), id(i){} ; // 初始化列表
private:
string name ;int id ;};
(8)c语言结构数组初始化扩展阅读
在程序里,数据初始化也可能在没有由明确的语法来实现的情况下进行。例如说,如果一个静态变量在没有初始化(即未指定初值)的情况下被声明,则:对于原生数据类型:以对应类型的零值进行初始化;对于类中的静态对象:由其默认的构造函数来进行初始化。
每一个初始化部分里面的代码在程序运行后,或库的begin-end块运行之前。delphi使用对单元相关树的深度优先遍历来运行初始化部分。换句话说,就只在一个单元的初始化代码运行前,delphi就运行了特他使用的每一个单元的初始化部分。每一个单元仅初始化一次 。
I. C语言怎么给结构体的数组初始化说的不太明白,具体看下面例子
struct x{
int a;
char b[10];
}c//或者 c={.b="kook"};(记不清要不要c99了)
//或者strcpy(c,"kook");(自己注意添加头文件)
//或者c.b[0]='k';c.b[1]='o';c.b[2]='o';c.b[3]='k';
或者char *d="kook";
for(int i=0;i<strlen(d);i++)
c.b[i]=d[i];
printf("%s",c.b);
随便举几个例子,写法不严谨(越往后方法越那什么...),大佬轻喷
J. c语言 在结构体中 初始化其中的数组
结构体是个空架子,是无法“初始化其中的数组”的,只有初始化结构体的对象(即变量)。像你这里可以这么做:在使用这个结构体前写一句struct
bf
x={NULL,NULL,NULL,NULL};,那么x中的所有字符数组就都为空了。