小编mjh*_*hoy的帖子

为什么*mut i8用于ncurses-rs中的WINDOW类型?

在ncurses-rs包中给出这个定义:

pub type WINDOW = *mut i8;
Run Code Online (Sandbox Code Playgroud)

一个用法WINDOW:

pub fn newwin(_:c_int,_:c_int,_:c_int,_:c_int) -> WINDOW;
Run Code Online (Sandbox Code Playgroud)

和实施,在ncurses的C库(1,2,3):

// 1:
typedef struct _win_st WINDOW;
// 2:
struct _win_st { 
    /* lots of fields... */
};
// 3: 
(WINDOW *) newwin (int,int,int,int);
Run Code Online (Sandbox Code Playgroud)

为什么是这种类型的WINDOW *mut i8

我正在读它作为指向C的指针char,这显然是不正确的.i8如果你没有在Rust中实现C结构,那么最好简单地说一个指针是类型的吗?这根本不重要吗?

types rust

0
推荐指数
1
解决办法
93
查看次数

标签 统计

rust ×1

types ×1