`

UINT_MAX输出后为什么是-1

 
阅读更多

 

无符号INT最大二进制为(11111111111111111111111111111111)也是十六进制(0xffffffff)

如果你当成有符号数取补码后输出就得-1;

如果你当成无符号数就是最大数即:4294967295

例程如下:

#include <stdio.h>

#include <limits.h>

int main(int argc, char *argv[])

{

    unsigned int i = UINT_MAX;

    printf("%u\n", i);       //无符号

    printf("%d\n", i);        //有符号

    return 0;

}

分享到:
评论

相关推荐

    arm_max和arm_sort两个函数的使用.docx

    本文将详细介绍`arm_max_f32`和`arm_sort_f32`两个函数的使用,这两个函数是针对MSP432平台的程序设计,主要用于处理32位浮点数数组。我们将深入探讨它们的功能、参数以及如何在实际代码中应用。 **arm_max_f32 ...

    hmac-sha256.zip_HMAC-SHA224_hmac_hmac sha2_hmac sha256 c++_hmac-

    uint8_t mac[EVP_MAX_MD_SIZE]; unsigned int mac_len; HMAC_Final(ctx, mac, &mac_len); HMAC_CTX_free(ctx); return std::vector&lt;uint8_t&gt;(mac, mac + mac_len); } ``` 这段代码使用了OpenSSL库,首先初始化...

    arm_mult_q15函数使用 参考代码

    在Q15格式中,每个数的范围是-1到1,但精确值是乘以2^-15的。这个函数通常被用于资源受限的嵌入式系统,如MSP432这样的微控制器,因为它可以在不使用浮点运算单元的情况下执行高效的数学运算。 `arm_mult_q15`函数...

    MAX7219非编码模式.zip_MAX7219_MAX7219非编码模式_around5qn_max7219编码

    MAX7219是一款常用的串行输入/输出的8位并行输出的LED显示驱动芯片,常用于驱动7段数码管、点阵显示器等。它内部集成了译码器、扫描逻辑、电流驱动器和串行接口,可以方便地与微处理器连接,实现对LED的控制。在非...

    STM32驱动MAX6675

    - **SO**:配置为输入模式,用于接收 MAX6675 输出的数据。 - **CS**:配置为输出模式,作为片选信号。 2. **发送时钟信号**:通过 SCK 发送时钟信号,控制 MAX6675 输出数据。 3. **读取数据**:在 SCK 下降沿...

    MAX11068.rar_MAX11068_interface

    1. **初始化函数**:可能名为`MAX11068_Init()`,负责设置SPI接口参数(如时钟频率、极性和边沿),并可能初始化CS引脚。 2. **配置函数**:如`MAX11068_SetConfig(uint16_t config)`,将配置字写入设备,以设定所...

    MAX31865模块STM32驱动程序

    在这个项目中,STM32负责接收MAX31865的数字输出,处理数据,并通过串口(UART)将温度信息传输到显示器或其他设备上。串口通信是一种常见的嵌入式系统通信方式,简单可靠,易于实现。 从压缩包文件名称“MAX31865-...

    max30102心率传感器stm32 c语言版

    void MAX30102_WriteRegister(uint8_t reg, uint8_t value); void MAX30102_StartMeasurement(void); ``` 采集数据时,循环读取传感器的输出,通常包括脉冲强度数据。这些数据需要经过滤波和信号处理,例如使用滑动...

    C语言编程实例更新.pdf

    `:以无符号整数形式输出`uint_d`的值。 - `printf("float_pi=%12f\n", float_pi);`:以12位宽度输出`float_pi`的值,不足部分以空格填充。 - `printf("float_pi=%12.5f\n", float_pi);`:以12位宽度输出`float_pi...

    stdint.h头文件

    总结来说,`stdint.h`和`inttypes.h`是C语言编程中不可或缺的工具,它们为开发人员提供了跨平台的整数类型定义和格式化输出函数,极大地增强了代码的可移植性和可靠性。在处理需要精确整数位宽的项目时,正确使用这...

    inttypes.h&stdint.h 头文件

    2. 类似于 `inttypes.h` 中的 `int_leastN_t` 和 `uint_leastN_t` 类型,表示至少为N位的整数类型。 3. `int_fastN_t` 和 `uint_fastN_t` 类型,表示尽可能快的N位整数类型。 4. `intmax_t` 和 `uintmax_t` 类型,...

    openmv与stm32通讯,openmv与stm32怎么接线,C,C++源码.rar

    - **OpenMV端:** OpenMV内部已经预设了SPI接口,用户主要通过软件配置相应的SPI引脚(SCK、MISO、MOSI、NSS)为输入/输出,并设置SPI模式。 **2. 接线指南** - **SCK**:STM32的SPI时钟信号连接到OpenMV的SPI...

    inttypes.h stdint.h

    1. `% PRIx32`、`%pRIx32` 等:用于在`printf`家族函数中格式化输出`uint32_t`类型的十六进制值。 2. `% "PRIu64"`, `% PRIuPTR` 等:用于打印`uint64_t`或指针类型的无符号十进制值。 3. `% "PRIdPTR"`:用于打印...

    stdint.h和inttypes.h

    `stdint.h` 和 `inttypes.h` 是C语言标准库中的两个重要头文件,它们为程序开发提供了标准化的整数类型定义,以确保在不同平台和编译器上具有确定的大小和行为。这两个头文件在处理不同大小的整数以及进行精确的数据...

    12位串行AD转换器MAX187的应用

    A/D转换的工作过程是:当西为低电平时,在下降沿MAX187的T/H电路进入保持状态,并开始转换,8.5μs后DOUt输出为高电平作为转换完成标志。这时可在SCLK端输入一串脉冲将结果从DOUt端移出,读入单片机中处理。数据读取...

    NRF24L01发送和接收程序

    5. **`uint SPI_RW(uint data1)`**:SPI读写函数,用于向NRF24L01写入或读出一个字节的数据。 6. **`uchar SPI_Read(uchar reg)`**:读取指定寄存器`reg`的值。 #### 六、总结 本文通过对NRF24L01发送和接收程序的...

    全部stdint.h1

    1. **固定宽度整数类型**:这些类型如 `int8_t`, `int16_t`, `int32_t`, 和 `int64_t`,以及它们的无符号对应类型(例如 `uint32_t`),保证了整数类型的宽度确切为 N 位,包括符号位。这使得在处理特定宽度的整数时...

    voip---linphone 分析

    RtpProfile* TheRTPprofile is a table RTP_PROFILE_MAX_PAYLOAD set to 128 to map between RTP payload type number and the PayloadType that defines the type of media. ``` - **rtp_stats_t 结构体**:...

    FFmpeg需要用到的头文件inttypes.h stdint.h

    2. **无符号固定宽度整型**:对应的无符号版本,例如`uint_fast8_t`、`uint_fast16_t`、`uint_fast32_t`、`uint_fast64_t`和`uint_least8_t`、`uint_least16_t`、`uint_least32_t`、`uint_least64_t`。 3. **最大...

    inttypes.h+stdint.h压缩包

    1. `int8_t`, `uint8_t`: 定义了至少8位的有符号和无符号整数。 2. `int16_t`, `uint16_t`: 定义了至少16位的有符号和无符号整数。 3. `int32_t`, `uint32_t`: 定义了至少32位的有符号和无符号整数。 4. `int64_t`, ...

Global site tag (gtag.js) - Google Analytics