马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 剑仙十号 于 2018-4-11 16:18 编辑
【剑仙教程】结构体3。二维.关联数组的学习。
.
问题:
有5名学生,每名学生都有 学号,身高,体重,联系电话_四项信息。怎样去储存这些信息? 理解结构体有些难度,你得先明白_前面两个教程。
//
//
1、抓题型。
这些信息_带有多种数据类型,归类为结构体问题。
2、建立_解题模型。例如:
. 学号 身高 体重 联系电话
学生0 201701 1.72 60.1 "18499966611"
学生1 201702 1.72 59.1 "18499966622"
学生2 201703 1.72 62.2 "18499966633"
学生3 201704 1.72 63.3 "18499966644"
学生4 201705 1.72 64.4 "18499966655"
.
3、分析_解题模型。
观察教程2,成绩的数据类型,全是单一的char类型。
而本例程有多种数据类型。分别是VC++的int类型,float类型,float类型,char str[]类型。
储存多种数据类型,要用到结构体。
.
结构体能把_多种数据类型,打包成一种新数据类型。再用这个结构体类,把某某变量名,定义为结构体类型。
说到底,结构体就是一个类。
结构体,是一种复合的数据类型。
//
开始学习例子。
运行TC,热键F1_查看帮助文档
3.wimdows平台,6.dllcall,4、结构体的使用。
在帮助文档中,查询数据类型:
学号:TC的long类型,对应VC的int类型。
身高:TC的double类型,对应VC的double类型。
体重:TC的double类型,对应VC的double类型。
TC中没有float,只能用double类型了。double会多占4个字节,TC缺少float类型,建议在更新版本时_补全上去。
联系电话:TC的wchar类型,对应VC的wchar类型。
//=======================================================
定义部分:定义一个"学生信息结构"。
功能 STUDENT_MESSAGE()
var SM0 = 数组() //定义STUDENT_MESSAGE结构。
//"源文件"之类的东西,楼主喜欢在定义后面"加上一个0",表示这些是源数据。
//凡是调用的变量名,结构体名,函数名之类的,楼主就去掉这个0,和"定义部分"做区分。
SM0["学号"] = 数组("long" = 1 ,"value" = 0)
SM0["身高"] = 数组("double" = 1 ,"value" = 0)
SM0["体重"] = 数组("double" = 1 ,"value" = 0)
SM0["联系电话"] = 数组("wchar" = 12,"value" = "")
return SM0
结束
//=======================================================
var 线程ID
功能 执行()
var SM = STUDENT_MESSAGE()
SM["学号"]["value"] = 201701
SM["身高"]["value"] = 1.72
SM["体重"]["value"] = 60.1
SM["联系电话"]["value"] = "18499966611"
结束
功能 启动_热键()
var bool = 线程获取状态(线程ID)
if(bool == false)
线程ID = 线程开启("执行", "")
end
结束
功能 终止_热键()
线程关闭(线程ID)
结束
=======================================================
运行tc,热键F1_查看帮助文档
3.wimdows平台,6.dllcall,4、结构体的使用。例如:"long"="1","value"=100
♡い波.波 :
"long"="1" //申请1个long类型的字节长度,也就是4字节。
"long"="2" //申请2个long类型的字节长度,也就是8字节。
"long"="100" //申请100个long类型的字节长度,也就是400字节。
"value"=100 //初始值,赋值为100。
♡い波.波 :
在TC中,只有char,wchar类型,可以自定义字节长度。
其它类型,如"long"类型 设置为0,1,2,或100,TC全部默认为1个long类型的字节长度,也就是4字节。
本贴地址:
http://bbs.tyuyan.net/forum.php?mod=viewthread&tid=69097&mobile=no |