C语言中的结构体指针在c#中怎么表示

问题描述

大家好,现在需要将C的一部分函数实现转换到c#中来,请问如下该怎么表示啊:#defineBB_MAX_SIZEtypedefstruct{intbuffer[RB_MAX_SIZE];int*buffer_end;int*data_start;int*data_end;intcount;intsize;};back_buffer..intBB_pop(backbuffer*rb){if(rb==NULL||rb->buffer==NULL)returnfalse;int8_tdata=*rb->data_start;rb->data_start++;if(rb->data_start==rb->buffer_end)rb->data_start=rb->buffer;rb->count--;returndata;}看到C#中可以用不安全代码,那么就是说BB_pop可以表示如下:publicunsafeintBB_pop(back_buffer*rb){if(rb==NULL||rb->buffer==NULL)returnfalse;int8_tdata=*rb->data_start;rb->data_start++;if(rb->data_start==rb->buffer_end)rb->data_start=rb->buffer;rb->count--;returndata;}是否正确?而struct的定义如果我用如下是有语法错误的,ref处,怎么解释:publicstructback_buffer{publicint[]buffer=newint[10];publicrefintbuffer_end;publicrefintdata_start;publicrefintdata_end;publicintcount;publicintsize;}

解决方案

解决方案二:
直接用Stack<int>不就行了,还翻译

时间: 2024-10-03 13:55:40

C语言中的结构体指针在c#中怎么表示的相关文章

c-C 语言中返回结构体指针,结果出来了,但是还是出现错误,不知道为什么

问题描述 C 语言中返回结构体指针,结果出来了,但是还是出现错误,不知道为什么 解决方案 p 没有初始化,也就是没有分配空间.典型的指针错误,不初始化,指针指向哪里呢? 解决方案二: array *p = new array(); 解决方案三: array p;test(&p); 解决方案四: 当然,使用指针应该首先初始化一个空地址的,否则,很容易发生指针地址错误其次,看了一下你的程序设计,程序本身是定义了一个array的结构体变量,在主函数中却要申请一个指针变量p(它的类型是结构体),一系列操

c++-时间片轮转调度算法中C++结构体指针空值问题

问题描述 时间片轮转调度算法中C++结构体指针空值问题 // 时间片轮转调度算法.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include #include #include #include using namespace std; int ArrivalTime[100]; //进程到达时间 int ServiceTime[100]; //进程服务时间 int

关于c语言结构体指针数组的问题

问题描述 关于c语言结构体指针数组的问题 我有一个数组,里面每个成员都是结构体指针,我应该怎么给这个数组分配空间? 解决方案 指针变量的长度都是固定的,与你指向什么东西没关系的. 解决方案二: #include #define N 3 struct student { long int num; char name[20]; float score[3]; float aver; }; int main() { void Input(struct student stu[]); struct s

2015.08.21&amp;nbsp;结构体指针

   1. //整形指针指向整型变量的指针    int *p = NULL;//指针的标识,告诉编译器这是个指针变量     int a = 10;     p = &a;        printf("%d\n",*p);//取出指针变量p指向内存中的值   *p = 20;//*向指针变量p指向的内存中存储数据    //浮点型指针:指向浮点型变量指针:   float *p1 = NULL;   float b = 3.14;    p1 = &b;   pri

c程序设计-C语言截结构体指针中的变量又是另一个结构体指针,怎么用,代码运行不了

问题描述 C语言截结构体指针中的变量又是另一个结构体指针,怎么用,代码运行不了 #include #include #include #include #define LIST_INIT_SIZE 100//线性表存储空间的初始分配量 #define LISTINCREMENT 10//线性表存储空间的分配增量 typedef struct { int No; char name[10]; }Student; typedef struct { Student *elem;//存储空间基址 int

深入分析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 (

C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com

原文:C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表 | IT宅.com C语言语法笔记 – 高级用法 指针数组 指针的指针 二维数组指针 结构体指针 链表本文由 arthinking 发表于315 天前 ⁄ itzhai.com原创文章 ⁄ C语言 ⁄ 评论数 3 ⁄ 被围观 1,775 views+   指针数组: 在一个数组中,如果它的元素全部都是指针

c语言-结构体指针数组指向结构体类型数组的问题

问题描述 结构体指针数组指向结构体类型数组的问题 #include<stdio.h> #include<stdlib.h> struct student { char num; char name[10]; int grade; }; void swap(struct student *p[],int n) { int k,m,i,j; struct student *d; k=0;m=n-1; while(k<m) { j=m-1;m=0; for(i=k;i<=j;

编程c语言-关于c语言结构体指针的问题

问题描述 关于c语言结构体指针的问题 结构体指针只包含了结构体的首地址还是包含了所有成员的地址?还有结构体的首地址是什么,比如第一个成员是一个数组,那么首地址是不是就是这个数组的首地址? 解决方案 结构体指针既是结构体首成员的地址,也是结构体的首地址.你说的是对的. 好比数组指针既是数组的首地址,也是数组第一个元素的首地址. 解决方案二: 指针也可以指向一个结构体变量.定义的一般形式为: struct 结构体名 *变量名; 前面已经定义了一个结构体 stu: struct stu{ char *