c的结构在c#怎么定义?

问题描述

typedefstruct{songinfosongs[5];intfoundnum;}QUERYRESULT;typedefstruct{intid;inthits;charname[80];floatspos[5];intsposnum;}songinfo;

c#中怎么定义呢?

解决方案

解决方案二:
c中方法声明intAQ2_FPQuery_File(char*QueryWav,QUERYRESULT*queryResult)

在c#中怎么声明?
解决方案三:
[StructLayout(LayoutKind.Sequential,Pack=1)]publicstructQueryResult{[MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]publicSongInfo[]songs;//检索到的音频信息列表publicintfoundnum;//检索到的音频数量}[StructLayout(LayoutKind.Sequential,Pack=1)]publicstructSongInfo{publicintid;//该音频文件对应的id号publicinthits;//待检索音频与该音频对应的冲撞值[MarshalAs(UnmanagedType.ByValTStr,SizeConst=80)]publicstringname;//音频对应的文件名[MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]publicfloat[]spos;//待检索音频数据在该音频中的起始时间publicintsposnum;//待检索音频数据在音频中的位置数量}

解决方案四:
我自己搞定了哈哈
解决方案五:
引用2楼simadi的回复:

[StructLayout(LayoutKind.Sequential,Pack=1)]publicstructQueryResult{[MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]publicSongInfo[]songs;//检索到的音频信息列表publicintfoundnum;//检索到的音频数量}[StructLayout(LayoutKind.Sequential,Pack=1)]publicstructSongInfo{publicintid;//该音频文件对应的id号publicinthits;//待检索音频与该音频对应的冲撞值[MarshalAs(UnmanagedType.ByValTStr,SizeConst=80)]publicstringname;//音频对应的文件名[MarshalAs(UnmanagedType.ByValArray,SizeConst=5)]publicfloat[]spos;//待检索音频数据在该音频中的起始时间publicintsposnum;//待检索音频数据在音频中的位置数量}

结构很少用到,补习补习
解决方案六:
癸巳〖蛇〗丁巳月壬寅日二〇一三年四月廿七|芒种双子座庚酉时
解决方案七:
学习了,顶起。
解决方案八:
添加一个字符集的修饰。

时间: 2024-09-30 03:50:50

c的结构在c#怎么定义?的相关文章

结构体类型变量的定义和引用

前面的课程我们学习了一些简单数据类型(整型.实型.字符型)的定义和应用,还学习了数组(一维.二维)的定义和应用,这些数据类型的特点是:当定义某一特定数据类型,就限定该类型变量的存储特性和取值范围.对简单数据类型来说,既可以定义单个的变量,也可以定义数组.而数组的全部元素都具有相同的数据类型,或者说是相同数据类型的一个集合.在日常生活中,我们常会遇到一些需要填写的登记表,如住宿表.成绩表.通讯地址等.在这些表中,填写的数据是不能用同一种数据类型描述的,在住宿表中我们通常会登记上姓名.性别.身份证号

C++中结构体的类型定义和初始化以及变量引用_C 语言

C++结构体类型的定义和初始化 有时需要将不同类型的数据组合成一个有机的整体,以供用户方便地使用.这些组合在一个整体中的数据是互相联系的.例如,一个学生的学号.姓名.性别.年龄.成绩.家庭地址等项,都是这个学生的属性,见图 可以看到学号(num).姓名(name).性别(sex).年龄(age).成绩(score ).地址(addr)是与姓名为"Li Fun"的学生有关的.如果在程序中将num,name,sex,age,score,addr分别定义为互相独立的变量,就难以反映出它们之间

结构体数组的定义和引用(五)

2)指针法若p指向数组的某一个元素,则p++就指向其后续元素.3)指针的数组表示法若p=student,我们说指针p指向数组student,p[i]表示数组的第i个元素,其效果与student[i]等同.对数组成员的引用描述为:p[i].name.p[i].num等.[例7-4]指向结构体数组的指针变量的使用.structdata/*定义结构体类型*/{intday,month,year;};structstu/*定义结构体类型*/{char name[20];long num;struct d

结构体数组的定义和引用(四)

指针变量非常灵活方便,可以指向任一类型的变量,若定义指针变量指向结构体类型变量,则可以通过指针来引用结构体类型变量.7.3.1 指向结构体类型变量的使用首先让我们定义结构体:struct stu{char name[20];long number;float score[4];} ;再定义指向结构体类型变量的指针变量:struct stu *p1, *p2 ;定义指针变量p 1.p 2,分别指向结构体类型变量.引用形式为:指针变量→成员:[例7-2] 对指向结构体类型变量的正确使用.输入一个结构

结构体数组的定义和引用(三)

第七步,定义m a i n ( )函数,列出完整的程序清单.#include #include struct stu{char name[20];long number;float score[4];} ;m a i n ( ){void input(); / *函数声明* /void aver();void order();void output();void out_row();struct stu stud[4]; / * 定义结构体数组* /float row[3];i n p u t

结构体数组的定义和引用(二)

第四步,按平均成绩排序,排序算法采用冒泡法.void order(arr,n)struct stu arr[];int n;{ struct stu temp;int i,j,x,y;f o r ( i = 0 ; i < n - 1 ; i + + )f o r ( j = 0 ; j < n - 1 - i ; j + + )if (arr[j].score[3]>arr[j+1].score[3]){ temp=arr[j]; /结*构体类型变量不允许以整体输入或输出,但允许相互赋

结构体数组的定义和引用(一)

单个的结构体类型变量在解决实际问题时作用不大,一般是以结构体类型数组的形式出现.结构体类型数组的定义形式为:struct stu / *定义学生结构体类型* /{char name[20]; / *学生姓名* /char sex; / *性别* /long num; / *学号* /float score[3]; / *三科考试成绩* /};struct stu stud[20]; 定/*义结构体类型数组stud ,*// *该数组有2 0个结构体类型元素* /其数组元素各成员的引用形式为:st

深入分析C语言中结构体指针的定义与引用详解_C 语言

指向结构体类型变量的使用首先让我们定义结构体:struct stu{char name[20];long number;float score[4];} ;再定义指向结构体类型变量的指针变量:struct stu *p1, *p2 ;定义指针变量p 1.p 2,分别指向结构体类型变量.引用形式为:指针变量→成员:[例7-2] 对指向结构体类型变量的正确使用.输入一个结构体类型变量的成员,并输出. 复制代码 代码如下: #include <stdlib.h> /*使用m a l l o c (

相同元素不同结构重复定义的问题

CSS选择器是构建CSS的基础.在为大型,复杂嵌套的(x)HTML文档进行样式定义时,很有可能会遇上针对相同元素在不同结构下的重复定义的问题,这个问题也是前端开发人员相对头痛的问题. 在这种情况 (针对相同元素在不同结构下的重复定义) 发生的前提下,浏览器在渲染页面文件时,会按照一定规则进行优先级排列,然后根据这个优先级权重对发生状况的元素进行处理. 而这个浏览器遵循的规则是什么呢? 让我们来看一段简单的HTML代码: <body id="content"> <div