我要理解-1为什么是0xffffffff,所以写了下面的程序理解。

#include <stdio.h>
#include <stdlib.h>
 
typedef unsigned char *byte_pointer;
 
void show_bytes( byte_pointer start, int len )
{
        int i;
        for ( i = 0; i < len; i++ )
        {
                printf( "%.2x", start[i] );
        }
        printf( "\n" );
}
 
void show_int( int x )
{
        show_bytes( (byte_pointer)&x, sizeof(int) );
}
 
int
main( void )
{
        //printf( "%x\n", -1 );
        show_int(-1);
        exit(0);
}

  PS:主要代码都是《深入理解计算机系统》里,其中为什么要转换成 unsigned char*  这个还没明白。

posted @   lxgeek  阅读(555)  评论(0编辑  收藏  举报
编辑推荐:
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
· 对象命名为何需要避免'-er'和'-or'后缀
· SQL Server如何跟踪自动统计信息更新?
· AI与.NET技术实操系列:使用Catalyst进行自然语言处理
阅读排行:
· 官方的 MCP C# SDK:csharp-sdk
· 一款 .NET 开源、功能强大的远程连接管理工具,支持 RDP、VNC、SSH 等多种主流协议!
· 提示词工程师自白:我如何用一个技巧解放自己的生产力
· 一文搞懂MCP协议与Function Call的区别
· 如何不购买域名在云服务器上搭建HTTPS服务
点击右上角即可分享
微信分享提示