问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c# 中 怎样定义结构体?

发布网友 发布时间:2022-03-30 06:50

我来回答

5个回答

热心网友 时间:2022-03-30 08:19

C#结构体定义的情况:
C#结构体定义也可以象类一样可以单独定义.
class a{};
struct a{};

C#结构体定义也可以在名字前面加入控制访问符.
public struct student{};
internal struct student{};

如果结构体student没有publice或者internal的声明 类program就无法使用student结构定义 obj对象,如果结构体student的元素没有public的声明,对象obj就无法调用元素x
因为默认的结构体名和元素名是private类型
C#结构体定义之程序:
using System;
public struct student
{
public int x;
};
class program
{
public static void Main()
{
student obj=new student();
obj.x=100;
}
};

在结构体中也可以定义静态成员与类中一样,使用时必须用类名,或结构名来调用不属于实例,声明时直接定义.
C#结构体定义程序:
using System;
public struct student
{
public static int a = 10;
};
class exe
{
public static void Main()
{
Console.WriteLine( student.a = 100);
}
};


using System;
class base
{
public struct student
{
public static int a = 10;
};
}
class exe
{
public static void Main()
{
Console.WriteLine( base.student.a = 100);
}
};

在结构体中可以定义构造函数以初始化成员,但不可以重写默认无参构造函数和默认无参析构函数
C#结构体定义程序:
public struct student
{
public int x;
public int y;
public static int z;
public student(int a,int b,int c)
{
x=a;
y=b;
student.z=c;
}
};

在结构体中可以定义成员函数。
C#结构体定义程序:
public struct student
{
public void list()
{
Console.WriteLine("这是构造的函数");
}
};

结构体的对象使用new运算符创建(obj)也可以直接创建单个元素赋值(obj2)这是与类不同的因为类只能使用new创建对象
C#结构体定义程序:
public struct student
{
public int x;
public int y;
public static int z;
public student(int a,int b,int c)
{
x=a;
y=b;
student.z=c;
}
};
class program
{
public static void Main()
{
student obj=new student(100,200,300);
student obj2;
obj2.x=100;
obj2.y=200;
student.z=300;
}
}

在使用类对象和函数使用时,使用的是引用传递,所以字段改变
在使用结构对象和函数使用时,是用的是值传递,所以字段没有改变
C#结构体定义程序:
using System;
class class_wsy
{
public int x;
}
struct struct_wsy
{
public int x;
}
class program
{
public static void class_t(class_wsy obj)
{
obj.x = 90;
}
public static void struct_t(struct_wsy obj)
{
obj.x = 90;
}
public static void Main()
{
class_wsy obj_1 = new class_wsy();
struct_wsy obj_2 = new struct_wsy();
obj_1.x = 100;
obj_2.x = 100;
class_t(obj_1);
struct_t(obj_2);
Console.WriteLine("class_wsy obj_1.x={0}",obj_1.x); Console.WriteLine("struct_wsy obj_2.x={0}",obj_2.x);
Console.Read();
}
}

C#结构体定义程序运行结果为:
class_wsy obj_1.x=90
struct_wsy obj_2.x=100

热心网友 时间:2022-03-30 09:37

你要定义的是一个字符串数组,定义方法如下:
string[] myText = new string[1000] {};
结构体的关键字 struct,struct类型是一种值类型通常用来封装小型变量组,如果冲结构创建一个对象并将对象赋给某个变量 则变量包含结构该变量放入结构的全部值,如果复制包含变量的结构,则将该复制所有的值,对新副本所作的任何修改都不会改变就副本的值(值类型的复制,自复制给其他的值,改变原来结构的值)
结构的特点:结构不是引用类型,而是值类型。结构的实例化不能用new运算符。结构可以声明构造函数但是必须带参数的结构。结构不能从另外一个结构或类来继承,而且不能作为一个类的基类。结构可以作为null的类型,因而可向其符null值。
结构的声明
Struct Mystr
{

}
结构的访问修饰符可以是public,internal,默认修饰符为internal。
结构中的成员访问修饰符可以是private,public但不可以是protect(结构体不能别继承,只能连接接口),调用结果只能是public才能调用
结构化实例两种方式
Struct Mystr
{
Public int i;
}

热心网友 时间:2022-03-30 11:12

public struct MyStruct{
public int _number;
public string _text;
}

在C#中 建议你使用string而不是char数组存储字符串
还有 请在每一个字段前加入public 否则你会访问不到,C#相比C是有访问修饰的

热心网友 时间:2022-03-30 13:03

struct 结构名
{
int number;
char myText[1000]; // 一个包含文本的字符数组
};

热心网友 时间:2022-03-30 15:11

struts
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
时光公主高性价比氪金项目一览介绍_时光公主高性价比氪金项目一览是什么... 时光公主氪金买什么好介绍_时光公主氪金买什么好是什么 时光公主氪金买什么好 氪金钻石消费攻略 ch61u可以用gtx960显卡吗? 为什么路由器和机顶盒变成黄色网络连接不上 索尼WH-1000XM3耳机怎么通过蓝牙连接 索尼WH-1000XM3蓝牙连接手机教程... 葫芦岛市行政执法投诉办法第一章 总则 葫芦岛市价格调节基金管理办法第一章 总则 葫芦岛市政府信息公开暂行规定第一章 总则 葫芦岛市人民政府制发规范性文件规定第一章总则 电脑用钉钉听直播为什么说视频加载导常,请稍后重试 钉钉直播课里面的视频占用手机内存吗? 钉钉直播回放下载的视频只有几秒钟 钉钉如何在直播的同时分频看视频时间记录不受影响? 怎样能在看钉钉直播的时候刷视频不被打断? 钉钉视频场次过多,不能用怎么办? 钉钉群中保存的直播视频占电脑内存吗? 重力做功为负mg h h ove负三 H在什么时候是-1价的? 1.数轴上到原点的距离3的点所表示的数是?到表示-1的点的距离是2的点表示的数是? 2.如图,数轴上标出的所有 NaH中H-是负一价的阴离子,它可与NH3发生以下反应:NaH+NH3═H2+NaNH2,下列有关这个反应的说法中正确的 H元素的化合价什么时候显示负一价 《不负如来不负卿》txt下载在线阅读全文,求百度网盘云资源 H有负一价吗 什么时候是负一价 举些高中常遇到的例子 涓怎么读音 梦见去菜场买菜的预兆 梦见市场买东西的预兆 梦见自己买菜回来什么意思? 为什么老做梦梦到打架? 信息化办公应用师证书是什么证?? 可以做什么工作??? 学微软系统工程师和思科的网络工程师出去后能干什么? 什么样的水平可以做网络工程师 404 Not Found 404 Not Found 学习计算机专业的以后能干什么呢? 通信工程的毕业以后能干什么? 结构体定义和使用是什么? excel中字体怎么变大 excel怎么调大字体 excel里面的字怎么变大 如何把EXCEL 1字体变大? excel怎样把字体打大 EXCEL字体怎么调大,红线标注的? C语言结构体别名怎么定义? 呼伦贝尔友谊和海乳奶粉哪个好 呼伦贝尔海乳乳业有限责任公司怎么样? 有哪些学生喝的学生奶粉值得推荐? 海普诺凯1897奶粉的质量真的靠谱吗? 海普诺凯1897奶粉怎么样?