zoukankan      html  css  js  c++  java
  • union内嵌struct用法

     
    // union内嵌struct用法
    // 众所周知,union为联合体,struct为结构体。下面根据实例谈谈用法
     
    #include <stdio.h>  
    #include <string.h>  
    void main()  
    {   
        union{                    
            char i[6];   
            struct{               
                char first;   
                char second;  
                char third;  
                char fourth;  
                unsigned short five;  
                  }half;   
             }number;  
        strcpy(number.i,"abcdA");  
        printf("%c%c ",number.half.first, number.half.second);  
        printf("%c%c%d ",number.half.third, number.half.fourth,number.half.five);  
    }
    // 输出结果为: 

    图片

    // union中各个变量是共用内存空间。上例中,char数组和结构体共用内存空间。正如程序输出结果
    // char数组赋值,结构体中的变量就会按顺序获得数组中的值。
     
    main()   
        {   
             union{                     
                  int i;   
                  struct{               
                       char first;   
                       char second;   
                       char third;   
                       char fourth;   
                  }half;   
             }number;   
             number.i=0x44434241;           
             printf("%c%c%c%c ", number.half.first,number.half.second,number.half.third, number.half.fourth);   
             number.half.first='a';     
             number.half.second='b';   
             number.half.third='c';   
             number.half.fourth='d';   
             printf("%x ", number.i);   
        }  
    // 输出结果为: 

    图片

    // 从上例结果可以看出: 当给i赋值后, first,second,third,fourth也就相应被赋值; 
    // 当给first,second,third,fourth赋字符后, 这四个字符的ASCII码也被赋值给i。
  • 相关阅读:
    【JAVA基础】private 的使用
    【nginx】配置文件(模块、反向代理、负载均衡、动静分离)
    【Nginx】命令行安装
    【UNIAPP】websocte实现,功能:指定房间聊天,匿名进入 功能,文字与图片
    【前端JS】input对象图片在线转base64
    【UNIAPP】上传视频,进度条的前台与后端
    【IO阻塞异步】协程使用异步,异步爬虫,异步数据库操作
    【装饰器】原理以及基础使用
    可编程网络DataPath 及XDP
    gitlab 代码协作流程
  • 原文地址:https://www.cnblogs.com/david-wei0810/p/5953007.html
Copyright © 2011-2022 走看看