Hot_Doge 2015-11-30 06:32 采纳率: 33.3%
浏览 1510
已采纳

C语言指针相关问题,不能理解输出结果

 #include<stdio.h>

typedef unsigned char * char_point;

char_point int_cp(int i)
{  
    printf("i: %d\n", i);
    printf("&i: %p\n", &i);
    printf("(c_p)&i: %p\n", (char_point) &i);
    char_point cp = (char_point) &i;
    return cp;
}


char_point float_cp(float f)
{
    printf("f: %f\n", f);
    printf("&f: %p\n", &f);
    printf("(c_p)&f: %p\n", (char_point) &f);
    char_point cp = (char_point) &f;
    return cp;
}

void endian(char_point cp, int size)
{
    for (int i=0; i<size; i++)
    {
        printf("0x%x\n", cp[i]);
    }

}

int main()
{
    int i = 0x21893678;
    float f = 913.45678f;   

    endian(int_cp(i), sizeof(i));
        //endian((char_point) &i,  sizeof(i));
    printf("== == == ===  =   ==== === = == = == \n");
        //endian((char_point) &f,  sizeof(f));
    endian(float_cp(f), sizeof(f));
}

期望的输出是和注释代码的输出一致

输出结果:
图片说明

注释的输出:
图片说明

  • 写回答

7条回答 默认 最新

  • JinJie_Zhang 2015-11-30 07:34
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥20 想用ollama做一个自己的AI数据库
  • ¥15 关于qualoth编辑及缝合服装领子的问题解决方案探寻
  • ¥15 请问怎么才能复现这样的图呀