21xrx.com
2024-12-22 19:02:02 Sunday
登录
文章检索 我的文章 写文章
如何在C++中输出字节数组
2023-07-05 12:10:20 深夜i     --     --
C++ 输出 字节数组

字节数组是C++编程中常见的一种数据类型,其主要用途是存储字符串或二进制数据。在C++中输出字节数组可以通过多种方式实现,下面我们来看一些常见的例子。

第一种方式是使用cout输出。cout是C++标准库中的一个输出流对象,我们可以通过cout.write函数输出字节数组,其语法如下:


#include <iostream>

using namespace std;

int main() {

  char arr[] = {'H', 'e', 'l', 'l', 'o', '\0'};

  int len = sizeof(arr) / sizeof(arr[0]) - 1;

  cout.write(arr, len);

  return 0;

}

上述代码输出的结果为"Hello",其中sizeof(arr)返回数组arr的字节数,sizeof(arr[0])返回arr中一个元素的字节数,因此sizeof(arr)/sizeof(arr[0])可以计算出arr中元素的个数,-1是因为字符串以'\0'结尾,所以最后一个元素不需要输出。

第二种方式是使用printf函数输出。printf函数是C语言中的一个函数,但在C++中也可以使用,其语法如下:


#include <cstdio>

int main() {

  char arr[] = {'H', 'e', 'l', 'l', 'o', '\0'};

  int len = sizeof(arr) / sizeof(arr[0]) - 1;

  printf("%.*s", len, arr);

  return 0;

}

上述代码输出的结果也是"Hello",其中%.*s格式字符串表示输出长度为len的字符串,.*可以让printf读取一个整数参数来确定输出的长度。

第三种方式是使用fwrite函数输出。fwrite函数是C语言中的一个文件读写函数,但在C++中也可以使用,其语法如下:


#include <cstdio>

int main() {

  char arr[] = {'H', 'e', 'l', 'l', 'o', '\0'};

  int len = sizeof(arr) / sizeof(arr[0]) - 1;

  fwrite(arr, sizeof(char), len, stdout);

  return 0;

}

上述代码输出的结果也是"Hello",其中sizeof(char)返回一个字符的字节数,stdout表示输出流。

通过上述三种方式,我们可以在C++中输出字节数组,不同的方式适用于不同的场景,大家可以根据自己的实际需要选择合适的方式。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复