下面这个程序执行后会有什么错误或者效果


Posted in 面试题 onNovember 03, 2014
#define MAX 255
int main()
{
unsigned char A[MAX],i;//i被定义为unsigned char
for (i=0;i A[i]=i;
}
解答:死循环加数组越界访问(C/C++不进行数组越界检查)
MAX=255
数组A的下标范围为:0..MAX-1,这是其一..
其二.当i循环到255时,循环内执行:
A[255]=255;
这句本身没有问题..但是返回for (i=0;i 由于unsigned char的取值范围在(0..255),i++以后i又为0了..无限循环下去.
struct name1{
char str;1 short x;2
int num;
}
struct name2{
char str;0
int num;4
short x;6
}
sizeof(struct name1)=8,sizeof(struct name2)=12
在第二个结构中,为保证num按四个字节对齐,char后必须留出3字节的空间;同时为保证整个结构的自然对齐(这里是4字节对齐),在x后还要补齐2个字节,这样就是12字节。
intel:
A.c 和B.c两个c文件中使用了两个相同名字的static变量,编译的时候会不会有问题?这两个static变量会保存到哪里(栈还是堆或者其他的)?
static的全局变量,表明这个变量仅在本模块中有意义,不会影响其他模块。
他们都放在数据区,但是编译器对他们的命名是不同的。
如果要使变量在其他模块也有意义的话,需要使用extern关键字。
struct s1
{
int i: 8;
int j: 4;
int a: 3;
double b;
};
struct s2
{
int i: 8;
int j: 4;
double b;
int a:3;
};
printf(“sizeof(s1)= %d\n”, sizeof(s1));
printf(“sizeof(s2)= %d\n”, sizeof(s2));
result: 16, 24
第一个struct s1
{
int i: 8;
int j: 4;
int a: 3;
double b;
};
理论上是这样的,首先是i在相对0的位置,占8位一个字节,然后,j就在相对一个字节的位置,由于一个位置的字节数是4位的倍数,因此不用对齐,就放在那里了,然后是a,要在3位的倍数关系的位置上,因此要移一位,在15位的位置上放下,目前总共是18位,折算过来是2字节2位的样子,由于double是8字节的,因此要在相对0要是8个字节的位置上放下,因此从18位开始到8个字节之间的位置被忽略,直接放在8字节的位置了,因此,总共是16字节。
第二个最后会对照是不是结构体内最大数据的倍数,不是的话,会补成是最大数据的倍数

Tags in this post...

面试题 相关文章推荐
mysql的最长数据库名,表名,字段名可以是多长
Apr 21 面试题
Jar包的作用是什么
Mar 30 面试题
新电JAVA笔试题目
Aug 31 面试题
C++面试题目
Jun 25 面试题
如果NULL定义成#define NULL((char *)0)难道不就可以向函数传入不加转换的NULL了吗
Feb 15 面试题
数据库笔试题
May 09 面试题
介绍一下Linux内核的排队自旋锁
Jan 04 面试题
50道外企软件测试面试题
Aug 18 面试题
你所在的项目是如何确定版本号的
Dec 28 面试题
在Ajax应用中信息是如何在浏览器和服务器之间传递的
May 31 面试题
Python如何实现单例模式
Jun 03 面试题
GC是什么?为什么要有GC?
Dec 08 面试题
struct与class的区别
Feb 03 #面试题
某IT外企面试题-二分法求方程!看看大家的C++功底
Jul 04 #面试题
什么是数组名
May 10 #面试题
为什么要有struct关键字
May 08 #面试题
Kingsoft金山公司C/C++笔试题
May 10 #面试题
strlen的几种不同实现方法
May 31 #面试题
威盛公司软件C++工程师笔试题面试题
Jul 16 #面试题
You might like
GBK的页面输出JSON格式的php函数
2010/02/16 PHP
php导出生成word的方法
2015/12/25 PHP
php有效防止图片盗用、盗链的两种方法
2016/11/01 PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
2018/04/08 PHP
理解JavaScript的prototype属性
2012/02/11 Javascript
ie下$.getJSON出现问题的解决方法
2014/02/12 Javascript
jquery-syntax动态语法着色示例代码
2014/05/14 Javascript
原生JS绑定滑轮滚动事件兼容常见浏览器
2014/06/30 Javascript
jquery delay()介绍及使用指南
2014/09/02 Javascript
jQuery表单域属性过滤器用法分析
2015/02/10 Javascript
JavaScript动态添加style节点的方法
2015/06/09 Javascript
Extjs gridpanel 中的checkbox(复选框)根据某行的条件不能选中的解决方法
2017/02/17 Javascript
jquery版轮播图效果和extend扩展
2017/07/18 jQuery
JavaScript数组去重的几种方法
2019/04/07 Javascript
[01:21]辉夜杯战队访谈宣传片—CDEC
2015/12/25 DOTA
[05:09]第二届DOTA2亚洲邀请赛决赛日比赛集锦:iG 3:0 OG夺冠
2017/04/05 DOTA
python查找第k小元素代码分享
2013/12/18 Python
详解Django中Request对象的相关用法
2015/07/17 Python
通过实例浅析Python对比C语言的编程思想差异
2015/08/30 Python
python中闭包Closure函数作为返回值的方法示例
2017/12/17 Python
Python实现类似比特币的加密货币区块链的创建与交易实例
2018/03/20 Python
pandas.DataFrame的pivot()和unstack()实现行转列
2019/07/06 Python
pycharm显示远程图片的实现
2019/11/04 Python
Python包,__init__.py功能与用法分析
2020/01/07 Python
python 高阶函数简单介绍
2021/02/19 Python
html5唤醒APP小记
2019/03/27 HTML / CSS
美国婴童服装市场上的领先品牌:Carter’s
2018/02/08 全球购物
生物专业个人自荐信范文
2013/11/29 职场文书
粗加工管理制度
2014/02/04 职场文书
护士岗前培训自我评鉴
2014/02/28 职场文书
社会治安综合治理管理责任书
2014/04/16 职场文书
《山谷中的谜底》教学反思
2014/04/26 职场文书
小学五年级语文上册教学计划
2015/01/22 职场文书
看看如何用Python绘制小米新版天价logo
2021/04/20 Python
Python 详解通过Scrapy框架实现爬取百度新冠疫情数据流程
2021/11/11 Python
英镑符号 £
2022/02/17 杂记