方法

GLibIOChannelwrite_chars

声明 [src]

GIOStatus
g_io_channel_write_chars (
  GIOChannel* channel,
  const gchar* buf,
  gssize count,
  gsize* bytes_written,
  GError** error
)

描述 [src]

g_io_channel_write() 的新 API 的替代品。

对于具有非 NULL 或 UTF-8 编码的可寻址通道,不允许读写混合。只能在已从 g_io_channel_set_encoding()() 的文档中描述的情况的通道上调用 g_io_channel_write_chars()()。

参数

buf

类型: 一个 guint8 的数组

从该缓冲区写入数据。

数据由方法的调用者拥有。
count

类型: gssize

缓冲区的大小。如果 -1,则假定缓冲区是一个以 null 结尾的字符串。

bytes_written

类型: gsize*

写入的字节数。即使在返回值不是 G_IO_STATUS_NORMAL 的情况下,此值也可能非零。如果返回值是 G_IO_STATUS_NORMAL 并且通道是阻塞的,则如果 count >= 0,此值将始终等于 count

该参数将由函数设置。
error

类型: GError **

恢复错误的返回位置。

该参数可以是 NULL
如果返回位置不是 NULL,则您必须将其初始化为 NULL GError*
如果没有错误,方法将使该参数保持初始化为 NULL
如果发生错误,参数将被设置为一个新的 GError 分配;调用者将获得数据的所有权,并负责释放它。

返回值

类型: GIOStatus

操作的状态。