当前位置: 首页 > news >正文

做网站的技术性说明淘宝运营培训班

做网站的技术性说明,淘宝运营培训班,私人接单网站开发的能赚多少钱,中山企业做网站例一: 下面程序输出什么? int main() { int i 43; int n printf("%d\n",i); printf("%d\n",n); return 0; } 大家深入考虑一下为什么返回是3这背后有什么鲜为人知的秘密到底是C语言离奇的规定还是深思熟…

例一:

下面程序输出什么?

int main()    
{    int i = 43;    int n = printf("%d\n",i);  printf("%d\n",n);       return 0;  
}   

大家深入考虑一下为什么返回是3这背后有什么鲜为人知的秘密到底是C语言离奇的规定还是深思熟虑后的决定?

相信大家都在学习嵌入式课程 在学习驱动的时候 应该知道有一种字符设备驱动,在linux 中一切东东都是文件 外设也是文件 也就是说显示器也是文件 那么printf的实现其实就是调用显示器的驱动程序往这种外设写入数据 所以我们来考虑一下 显示器属于什么设备呢 字符型设备 所以printf返回的其实不应该是输出的字符个数 准确的说应该是 向字符设备写入的数据的字节数 因为char就占用一个字节 所以碰巧 “printf返回输出字符的个数” 这个说法正确了。

例二:

有两个疑问:

第一个:#define中用到了array,但是array在后面才定义的,合法吗?为什么?

第二个:程序输出什么?

#include <stdio.h>   
#define TOTAL_ELEMENTS (sizeof(array) / sizeof(array[0]))   
int array[] = {23,34,12,17,204,99,16};   
int main()   
{  int d;  for(d=-1;d <= (TOTAL_ELEMENTS-2);d++)  printf("%d\n",array[d+1]);  return 0;   
}   

第一个:#define中 用到了array, 但是array在后面才定义的,合法吗?为什么?

其实合法的,在编译之前是预编译,预编译会处理#define之流的东东,在编译时这个define就没了。

第二个:程序输出什么?

程序不会输出任何东西。因为int和unsigned int比较时会被转换为无符号的,因此-1就直接被看成0xFFFFFFFF了,这样d不可能小于条件中的表达式。自然for不会执行。注意一点sizeof是编译的工具,它的计算结果是无符号的。

http://www.tj-hxxt.cn/news/69623.html

相关文章:

  • 在线课程网站建设规范电商网站seo优化
  • 常见网站开发的语言淘宝关键词搜索量查询
  • 网站制作设计培训多少钱天津seo托管
  • 自学网站开发哪个网站好比较火的推广软件
  • 浙江省建筑市场监管公共服务平台站长工具seo查询5g5g
  • 找做课件的网站爱站网官网
  • php和java哪个做网站浩网络营销网站建设案例
  • 专业的手机网站建设公司哪家好今天国际新闻最新消息
  • 做微信投票的网站seo关键词的选择步骤
  • flex网站模板企业网站优化服务公司
  • 汉中专业做网站今日重大新闻头条十条
  • 沙湾移动网站建设营销推广策划及渠道
  • 湖南网站建设哪家好seo黑帽是什么
  • 美甲 by wordpress西安区seo搜索排名优化
  • Wordpress視頻加密临沂seo网站管理
  • 企点官网下载安装大连seo网站推广
  • 电商网站建设题库关键seo排名点击软件
  • 企业网站建设推荐兴田德润怎样做百度推广
  • 如何衡量一个网站的价值网页制作模板
  • 科技公司网站建设今日最新国内新闻重大事件
  • 商贸公司寮步网站建设价钱免费crm客户管理系统
  • 美食网站界面设计东莞网站建设方案报价
  • iis网站物理路径泾县网站seo优化排名
  • nike diy定制网站新闻平台发布
  • 阿里企业邮箱怎么样关键词seo公司推荐
  • 绍兴公司网站建设 中企动力绍兴上海网络推广软件
  • 上海网站建设 知名做青岛最新消息
  • 制作网站软件用什么语言网站优化seo培
  • 长春网站设计哪家好山西网络营销seo
  • 一个简单的网站怎么做镇江网站定制