深入理解结构体中占位符的用法
typedef union
{
struct x{
char a1 : 2;
char b1 : 3;
char c1 : 3;
}x1;
char c;
}my_un;
int main()
{
my_un a;
a.c = 100;
printf("%d/n",a.x1.c1);
printf("%d/n",sizeof(my_un));
return 0;
}
输出结果:
3
1
即第一个是3, 而联合体的大小为 1
分析:
sizeof为1表示1个字节,结构体中占位符冒号表示占的位数,实际上还是3+3+2=8位就是1个字节
100--->01100100
共用体中结构体的数据也为100.
a1占低2位(00);
b1占低3到5位(001);
c1占高3位(011);
因此a.x1.c1打印值为3.
sizeof(my_un);
共用体所占的字节大小取决于最大成员.它们都为1(结构体所占比特位为2+3+3=8位,char型为1字节).
所以为1.
相关推荐
-
java读取properties配置文件的方法
本文实例讲述了java读取properties配置文件的方法.分享给大家供大家参考.具体分析如下: 这两天做java项目,用到属性文件,到网上查资料,好半天也没有找到一个满意的方法能让我读取到.properties文件中属性值,很是郁闷,网上讲的获取属性值大概有以下方法,以下三种方法逐渐优化,以达到最好的效果以下都以date.properties文件为例,该文件放在src目录下,文件内容为: startdate=2011-02-07 totalweek=25 方法一: public class
-
java获取properties属性文件示例
一个属性列表可包含另一个属性列表作为它的"默认值":如果未能在原有的属性列表中搜索到属性键,则搜索第二个属性列表. 因为 Properties 继承于 Hashtable,所以可对 Properties 对象应用 put 和 putAll 方法.但不建议使用这两个方法,因为它们允许调用者插入其键或值不是 String 的项.相反,应该使用 setProperty 方法.如果在"不安全"的 Properties 对象(即包含非 String 的键或值)上调用 stor
-
iOS中修改UITextField占位符字体颜色的方法总结
前言 最近学了UITextField控件, 感觉在里面设置占位符非常好, 给用户提示信息, 于是就在想占位符的字体和颜色能不能改变呢?下面是小编的一些简单的实现,有需要的朋友们可以参考. 修改UITextField的占位符文字颜色主要有三个方法: 1.使用attributedPlaceholder属性 @property(nullable, nonatomic,copy) NSAttributedString *attributedPlaceholder NS_AVAILABLE_IOS(6_0
-
javascript 文本框水印/占位符(watermark/placeholder)实现方法
Firefox/Chrome/Opera从某一版本开始已经支持这一特性,但ie系列即使是ie9也还不支持,所以需要通过javascript来兼容这些不支持placeholder特性的浏览器. 普遍的做法 现在普遍使用的做法是通过表单元素的onfocus/onblur事件来改变value值,如下: 复制代码 代码如下: <input type="text" id="text1" /> <script> var el = document.get
-
Android 读取Properties配置文件的小例子
开发应用的时候会有一些有可能会变得值,例如webservice地址 应用的一些ID等等,之前一直都是直接在应用中改代码,不是忘点这忘点那,于是想到了可以用Properties配置文件,我把网址等变量配置的配置文件中,这样之后再改的话就直接改配置文件就行了,就不用改代码了下面给大家说说Properties的用法 复制代码 代码如下: public static String getPropertiesURL(Context c, String s) { String url = null; P
-
Json对象替换字符串占位符实现代码
例如: 含有占位符的字符串hello,{name},your birthday is {birthday }; 提供的Json对象{name: "czonechan", birthday : "1989-07-02" } ; 替换后为 hello,czonechan,your birthday is 1989-07-02. 实现代码: 复制代码 代码如下: Object.prototype.jsonToString=function(str) { o=this; r
-
Java遍历Properties所有元素的方法实例
复制代码 代码如下: //初始化properties Properties pro = new Properties(); try { InputStream inStr = ClassLoader.getSystemResourceAsStream("wahaha.properties"); pro.load(inStr);} catch (FileNotFoundException e) { e.printStackTrace();} catch (IOExcep
-
java遍历properties文件操作指南
在java项目开发过程中,使用properties文件作为配置基本上是必不可少的,很多如系统配置信息,文件上传配置信息等等都是以这种方式进行保存. 同时学会操作properties文件也是java基础. 复制代码 代码如下: public class PropertiesUtil { public static Map getFileIO(String fileName){ Properties prop = new Properties(); Map propMap=new HashMap()
-
Spring加载properties文件的方法
在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可,不需要修改源代码,这样更加方便.在Spring中也可以这么做,而且Spring有两种加载properties文件的方式:基于xml方式和基于注解方式. 下面分别讨论下这两种方式. 1. 通过xml方式加载properties文件 我们以Spring实例化dataSource为例,我们
-
.properties文件读取及占位符${...}替换源码解析
前言 我们在开发中常遇到一种场景,Bean里面有一些参数是比较固定的,这种时候通常会采用配置的方式,将这些参数配置在.properties文件中,然后在Bean实例化的时候通过Spring将这些.properties文件中配置的参数使用占位符"${}"替换的方式读入并设置到Bean的相应参数中. 这种做法最典型的就是JDBC的配置,本文就来研究一下.properties文件读取及占位符"${}"替换的源码,首先从代码入手,定义一个DataSource,模拟一下JDB
随机推荐
- iOS文字渐变色效果的实现方法
- 借助RubyGnome2库进行GTK下的Ruby GUI编程的基本方法
- SQLServer 2008中SQL增强之二 Top新用途
- JavaScript函数表达式详解及实例
- 硬盘如何分区的方法
- 判断客户端浏览器是否安装了Flash插件的多种方法
- Javascript 学习笔记 错误处理
- js获取客户端外网ip的简单实例
- JavaScript检测上传文件大小的方法
- JavaScript之iterable_动力节点Java学院整理
- python安装oracle扩展及数据库连接方法
- C#事务处理(Execute Transaction)实例解析
- java使用HttpSession实现QQ访问记录
- java和javascript获取word文档的书签位置对比
- jsp页面使用${}不起作用的解决方法
- AWR 深入分析( Automatic Workload Repository )
- PHP共享内存用法实例分析
- jQuery实现的产品自动360度旋转展示特效源码分享
- javascript获得服务器端控件的ID的实现代码
- Java模拟登录正方教务抓取成绩、课表、空教室