C语言之大小端转换

2023-05-16

#include <stdio.h>

unsigned int reverse_byte(char *c, char num)
{
	unsigned int r = 0;
	int i;
	for (i=0; i<num; i++)
	{
		r |= (*(c+i)<<(((num-1)*8)-8*i));
	}
	return r;

}

int main()
{
	int data = 0x12345678;
	int i = 0;
	char s;
	unsigned int out;
	while(1)
    {
	scanf("%d", &i);
	out = reverse_byte((char*)(&data), (char)i);
	printf("%x\n", out);
    }
}

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言之大小端转换 的相关文章

随机推荐

  • STM32 DMA +串口 收发数据(不用频繁进入中断) STM32G473 hal库

    1 1 实现方法 利用DMA接收串口数据 xff0c 在一定程度上会节省CPU 的消耗 大多数串口接收都是接收一个字节就中断一次 xff0c 如果串口上需要实时接收大量的数据 xff0c 这就会导致频繁进入中断 xff0c 这样一来 xff
  • tinyalsa 终极详解

    1 tinyalsa 背景 1 tinyalsa位于 Android源码的 external tinyalsa 位置 关于 tinyalsa xff0c tinyalsa是Google在Android 4 0之后推的 基于 alsa内核的用
  • github 出现无法连接成功问题终极详解

    1 fatal unable to access 39 https github com 666zhengyang soft projict set git 39 gnutls handshake failed Error in the p
  • hwclock 和 date 的爱恨情仇终极总结

    nbsp nbsp 里面 的 和 如果是 请参照网上资料 nbsp 命令 获取软件时钟 或者 说是系统时钟 和墙上时钟 开机 重启后 主要用的是 软件时钟 如果 或者异常重启 把这个 软件时间 写到 硬件时钟 nbsp 命令 获取 硬件时钟
  • ubuntu 屏幕缩放调整 终极总结

    1 终端 命令 重置 主题 缩放比例 xff08 手贱把ubutu图标改的很大 xff0c UI显示不出来无法调整 捉鸡 xff09 rm rf config dconf user amp amp reboot 2 xff08 UI 点击设
  • adb push 整个文件夹的内容

    adb push命令的时候 xff0c 有时候需要push某个文件夹下的所有内容到 adb push C xxdir project sdcard xxx
  • 查看某个进程占用空间大小 VmHWM VmRSS终极总结

    cat proc pid status VmPeak 表示进程所占用最大虚拟内存大小 VmSize 表示进程当前虚拟内存大小 VmLck 表示被锁定的内存大小 VmHWM 表示进程所占用物理内存的峰值 VmRSS 表示进程当前占用物理内存的
  • 冯唐成事心法

    刻意练习 动力 43 技巧 43 清晰的目标 魅力值 聊天的框架思维 缺乏目标感 1 状态 感受 2 联想聊天法 3 问对方去聊自己 窗口 信号 她 自己 我们 聊她是为了聊自己 聊自己是 为了聊我们 状态 感受 边聊边感受 1 舒适感 2
  • edge 兼容性问题解决方案

    Edge浏览器出现兼容性问题且所有页面崩溃 xff0c 包括设置均无法打开并访问的解决方法 百度文库
  • 开core信息

    ulimit c unlimited
  • 制定通信协议

    制定通信协议 一 什么是制定通信协议 xff1f 客户端在和服务器进行通信的时候 xff0c 为了让双方都能辨别接收到的消息的内容 xff0c 由发送方和接收方而制定的相关约定 二 为什么制定通信协议 xff1f 在大型的网络游戏中 xff
  • C++ Primer Plus(嵌入式公开课)---1-3章

    1011 C 43 43 Primer Plus 名词解释数值范围 第1章 预备知识1 1 C 43 43 简介1 2 C 43 43 简史1 2 2 C语言编程原理1 2 3 面向对象编程1 2 4 C 43 43 和泛型编程1 2 5
  • Xilinx的Zynq系列,ARM和PL通过DMA通信时如何保证DDR数据的正确性。

    使用ZYNQ或者MPSoC的好处是可以通过PL逻辑设计硬件加速器 xff0c 对功能进行硬件加速 加速器和ARM之间的交互信息一般包含自定义加速指令传递 待计算数据以及计算结果 这三种交互信息为了实现高性能往往需要使用DMA进行通信 考虑两
  • vscode使用clangd开发c++,实现自动补全功能

    安装 在vscode中安装clangd插件 xff0c 如图所示安装插件 xff0c Enable插件clangd xff1b 如果之前安装过C C 43 43 插件的 xff0c 需要将Disable插件C C 43 43 在命令行安装c
  • 串口高波特率下如何稳定接收

    无论是蓝牙 WiFi xff0c 还是4G 5G xff0c 亦或是其它模组 xff0c 都支持AT指令 43 透传模式 AT指令模式下 xff0c 执行查询指令和操作 设置 指令 响应速度快 xff0c 逻辑交互明确 xff0c 不需要复
  • stm32 串口发送多字节数据(结构体版本)

    话不多说先上代码 typedef struct shuju u8 sj0 帧头 u8 sj1 u8 sj2 u8 sj3 u8 sj4 u8 sj5 u8 sj6 u8 sj7 u8 sj8 u8 sj9 帧尾 shuju 实际使用 shu
  • C++ Primer Plus(第六版)读书笔记

    文章目录 C 43 43 Primer Plus xff08 第六版 xff09 第1章 预备知识第2章 开始学习C 43 43 2 1 进入C 43 43 2 2 1 main 指令 2 2 C 43 43 语句2 2 2 赋值语句 第3
  • STM32 (5) 自己写库 构建库函数雏形1 寄存器结构体定义

    前面把基础部分讲得差不多 xff0c 比如说什么是寄存器 xff0c 寄存器映射 xff0c 怎么样来寄存器编程 xff0c 寄存器编程的时候应该参考官方的什么手册 xff0c 前面讲了什么是寄存器 怎么使用寄存器编程 寄存器编程的时候应该
  • 编译器优化对自定义延时程序的影响(volatile详解实验一)

    由此可见 xff08 C语言volatile关键字详解 xff09 xff0c 编译器优化会对自定义延时程序有影响 xff0c 我们深入汇编程序去探讨产生怎样的影响 xff01 首先是未加 volatie 使用和未使用编译器优化汇编程序的对
  • C语言之大小端转换

    include lt stdio h gt unsigned int reverse byte char c char num unsigned int r 61 0 int i for i 61 0 i lt num i 43 43 r