C 中细节问题的试题
Posted 冰岛彩虹
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C 中细节问题的试题相关的知识,希望对你有一定的参考价值。
下面函数的功能是什么?仔细分析!
#include<stdio.h> #include<Windows.h> //函数的功能 // a<0 输出0 // 0<=a<=255 输出 a // a>255 输出255 unsigned char function(int a) { if(a&(~0xff)) { return (-a)>>31; }else { return a; } } int main() { int n=0; n=function(-55); printf("%d\n",n); system("pause"); return 0; }
下面的代码的有结果吗?为什么?
int a=1; a+=++(a++); //此时a的值是多少?
解析:编辑错误,数值不能进行自增运算。
Question:若一个视频中图像分辨率为1920*1080,每像素采样精度为16-bit,每秒25帧图像,则每秒图像占内存(1920*1080*25*16)/8_byte(所有数据连续存放)
16-bit=2byte 1920*1080表示的是像素点
图像分辨率之1080P与1080i
int16_t x=32767; x++; printf("%d",x);输出的结果是什么?
int16_t x=32767; // -32768 why????
//
//16位int范围-32768~32767
x++; printf("%d",x);
上面的问题可以和下面的问题同解:
int x=-32769; printf("%d",x); //为什么输出的结果是32767?
这是int型数据溢出的问题,16位int范围-32768~32767
所以-32769超出了int范围,-32768多减一个就变成了32767
如何理解多减一个:可以往数的进制上面考虑,不够就往回挪了一个(自己的理解)
以上是关于C 中细节问题的试题的主要内容,如果未能解决你的问题,请参考以下文章
片段(Java) | 机试题+算法思路+考点+代码解析 2023
C语言必会面试题(3耶稣有13个门徒,当中有一个就是出卖耶稣的叛徒,请用排除法找出这位叛徒:13人围坐一圈,从第一个開始报号:1,2,3,1,2,3...。凡是报到“3”就退出圈子,...)(代码片段
Android 逆向使用 Python 解析 ELF 文件 ( Capstone 反汇编 ELF 文件中的机器码数据 | 创建反汇编解析器实例对象 | 设置汇编解析器显示细节 )(代码片段