本文目录一览

1,在结构体内部的变量如何赋值

这样,可以仿照类的用法,默认情况下值为-1,0 typedef struct tree { int weight,parent; tree(int w=-1, int p=0){weight=w;parent=p;} struct tree *lchild,*rchild; }huffmantree;

在结构体内部的变量如何赋值

2,C语言中如何给结构体赋值

给你一个例子好了struct student{char name[10];int number;int age;};struct student xiaoming;xiaoming.name="xiaoming";xiaoming.number=2009001;xiaoming.age=20;还有一种是用指针引用的,可能说你也不懂,好好看看书吧、、

C语言中如何给结构体赋值

3,结构体赋值

struct jgouti /*定义结构体数组*/ char cpm[30]; float jiag; int sl;};struct jgouti id[10] = {NULL};//直接给空喽
对于结构体的变量可以像你那样直接赋值 s1 =s2对于结构体的指针是这样表示的 struct structa *s1;仍有问题请追问

结构体赋值

4,如何给结构体数组赋值

C语言只有在定义字符数组的时候才能用“=”来初始化变量,其它情况下是不能直接用“=”来为字符数组赋值的,要为字符数组赋值可以用string.h头文件中的strcpy函数来完成。 例如: char a[10] = "123"; /*正确,在定义的时候初始化*/ char a[10]; a = "123"; /*错误,不能用“=”直接为字符数组赋值*/ strcpy(a, "123"); /*正确,使用strcpy函数复制字符串*/ 所以要对game[0][0].cpart赋值应该用strcpy(game[0][0].cpart, "123");才对。注意要使用strcpy函数要用#include 包含string.h头文件。

5,C语言 结构体的赋值

这叫结构体变量声明与初始化。按规定,花括号内的 初始化 数值,必须为常量。struct student a[3]=你的结构数组a[3] 里用了变量 zhangsan, 语法上是错的。你可以改成:struct student a[3]=其中 声明完毕,语句部分 另加一句赋值语句: a[0]=zhangsan; 就把zhangsan的数据传给a数组的 元素 a[0] 了。
前边没有结构体的定义部分吗?
相同类型的结构体是可以直接赋值的,这是ansi/iso c规定的。ansi/iso c规定的合法行为,编译器是必须支持的。 但不能进行比较,例如 if (stu[1] == stu[2])是不允许的。 这种问题不能靠试验获得准确的答案,因为你用的编译器支持并不表明其他编译器也支持。

6,结构体变量如何赋值可以直接赋值吗

结构体变量是可以直接赋值的;  定义结构体类型,然后用这个类型定义出来的变量就是结构体变量;  C语言在相同类型的变量间赋值时是直接内存复制的,即将他们的内存进行复制,这里因为同样结构体变量,属于同一种变量,所以赋值时是按照他们的内存分布来直接拷贝的。
结构体的赋值仅仅是简单的浅复制,如果涉及到指针类型就会出问题,比如:struct BirthDay int m_Year;int m_Month;int m_Day;};struct stu int m_Age;char m_Sex;BirthDay *bd;};
可以,但是不太推荐.--------------------可以在定义时赋值,也可以通过变量来赋值,C++里面还可以通过构造函数,成员函数来赋值等...struct yy int i;float f;}a = struct yy b;b.i = 2;b.f = 1.1;
可以直接赋值,但是在有指针的情况下会出现指向同一位置的情况,在这种情况下,释放掉其中之一那么,另一个的指针使用会出现非法.因为他们有默认的赋值重载.但是只可以简单的将对应的值一一赋给对方.同一类型用得着声明两次么?这么多人都说了,可以呀.只是有些像上面说的那种情况你要注意一下.
struct 结构体可以用另一个和它同类型的变量赋值,如struct numnum num1,num2;如果num1以赋值,可以直接num2=num1;其余的情况就要使用类似s_un_b.s_b1 s_un_b.s_b2的形式了...

文章TAG:结构  结构体  赋值  体内  结构体赋值  
下一篇