C语言的小小问题,大家都进来看看

作者&投稿:守逄 (若有异议请与网页底部的电邮联系)
C语言 小小问题~

第二行的f1写成fi了

第一次执行x++&&y++的时候,这个表达式的值为0,因为这个时候x=0y=7,&&运算符的运算规则是有0出0,全1出1,执行以后x变为1,y变为8
第二次执行的时候这个表达式的值为1,因为这个时候x=1,y=8,而在&&中,非0的整数可以统一视为1来运算,所以等于1,执行以后x的值变为2,y变为9
你也可以用我的这个程序自己验证一下,我已经验证过了
#include
{
int x=0,y=7;
printf("%d
",x++&&y++);
printf("%d
",x++&&y++);
}

1.至于宏定义为什么喜欢定义成 0xf 什么的,还有经常看到定义成0x00000001 这种形式的。
首先计算机运算全是通过2进制进行的,所以把16进制(0x 代表这个数是16进制的)转换成2进制,那么f 就是 1111
0xfff1 2进制表现就是 1111 1111 1111 0001

c语言基础教程书上都有这么一课,就是位运算,"|","&", 等等操作符。当表现一个对象有几种属性时候,它可以并列拥有几种属性,比如一件衣服,他可以是蓝色(定义蓝色为 0001 即0x1),红色(定义红色为0010,即0x2),
黑色(定义为0100,即0x4),白色(1000,0x8)

所以当你看到这件衣服时候,有个表示告诉你他的属性是0xf,即1111,就表示4种颜色它全具备,如果属性是0xa,即1001,那表示它具有 蓝色 和 白色 2种属性。

这么讲比较通俗点吧。。。关键是 位运算 那章仔细看就懂了。

--------------------

2. c语言是面向过程的语言,c++是面向对象的语言,这是家喻户晓的,其实他们很相似,c的结构体,以及c++的类。
如果学习过c++就不难理解了,对象概念。结构体也是如此。 类下面定义了各种成员,其中包括成员变量,也包括成员函数,包括其他子类或子结构体。通过点“.”来找到他下一级的成员。

_dpmi_int()我才也是他其中的一个成员函数吧,寄存器这东西我也没接触过,只能先这么解释了,呵呵。

ps:_dmi_int吗?确定不是_dmi_init吗? init表示初始化的意思,一般类里的函数喜欢加这么一个初始化函数来补充构造函数没有做完的工作。

你的程序时嵌入式中用的吧?你那个0xfff1是芯片的管腿地址。

第二个问题,_dpmi_regs是你的那个开发包特定的结构体,具体的你应该看你的sdk的说明文档!!

Ox,应该是16进制的意思,fff1自然是数字了,
/*鼠标信息宏定义*/
#define WAITING 0xff00
#define LEFTPRESS 0xff01
#define LEFTCLICK 0xff10
#define LEFTDRAG 0xff19
#define RIGHTPRESS 0xff02
#define RIGHTCLICK 0xff20
#define RIGHTDRAG 0xff2a
#define MIDDLEPRESS 0xff04
#define MIDDLECLICK 0xff40
#define MIDDLEDRAG 0xff4c
#define MOUSEMOVE 0xff08
下面我给个不错的宏定义学习的链接
http://hi.baidu.com/315283700/blog/item/5280eecd85c94c1701e92813.html
至于下面的问题,呵呵,没接触过


c语言的一些小小小问题
1,\\这个转义字符,如果出现'\\'应该用'\\\\'来表示,'\\0'这个是字符串结束的标志,后面的字符就没有用了。所以是不合法常量,应该写成'\\\\019'就可以了。2,#define大多数情况下只是起到替换的作用(所以要记得家括号),y=a*b+x替换一下就是y=a*a+3+x,在替换一下就是y=5*5+3+5+3,这样...

求教几个语言文字方面的问题!
1、应改为:毋庸质疑,二手房市场这块‘大蛋糕’将会成为下一个争夺热点。2、C 一般写成夹克。茄(读jia一声)时只作雪茄 3、C 应改为:我们要看到,公平只能是相对的。4、CD A句应改为:希望这节课能给各位同学的写作带来一点小小的启示。B句应改为:写实和想像(不是象)作为作文教学的两...

幼儿园大班语言活动教案
幼儿园大班语言活动教案 篇1 一、活动目标 1.通过观察图片,讲述内容,发展幼儿的观察能力和语言表达能力。 2.丰富词汇,培养幼儿学习散文的兴趣以及对文学作品的欣赏能力。 3.通过学习散文,培养幼儿良好的说话习惯。 二、活动准备 实物投影机、电视机、录音机、春景图一张、电教软件、文字卡片。 三、活动过程 1....

一年级语文上册大还是小教学反思
问题一:一年级语文上册大还是小教学反思 学生通过观察字形,了解汉字正确的书写笔顺,感受汉字的间架结构;然后通过描红,仿写练习,学会正确书写汉字。强调孩子正确的书写姿势,有利于孩子的身体健康发展。“端端正正地写字,写出端端正正的字。”在这样扎实的写字教学活动中,学生不但能把字写好,而且能陶冶出热爱祖国语言文字...

小小的大舌头,为什么最近几年成为大众热议的对象?
其实大舌头出现的原因还有不少,只不过很多人都不太会重视,于是即便问题出现了也很难主动去矫正。主动和孩子说话 前面咱们说过,说话是一个相当主动的技能,需要长年累月的练习才能逐渐形成语言体系。而对于学龄前儿童来说,父母在其中扮演的角色相当重要,因此家长们可以在生活中主动与孩子搭话,比如询问...

在生活中,如何提高自己的社交能力?
一个人玩会很孤独,两个人玩可以有个伴,小的时候只要谁惹谁生气,那么就不会跟那个人玩,久而久之,就会有一群人不跟那个人玩,慢慢的就会发现他们都在孤立那个小孩子们眼中认为的坏人,开始排挤。慢慢长大后就会发现,之前认为的社交能力不怎么重要,但是现在就需要这样的社交能力,知道了人际交往的...

大学生语言文字基本功大赛 求试题与答案
6、“毋庸质疑,二手房这块‘大蛋糕’将会成为下一个市场的争夺热点”中有一个词使用不当,应改为_置疑_。7、“弑”是个古语词,意为_臣杀君、子杀父、下杀上,“弑子”的说法是不对的。8、在“把”字句和“被”字句中,否定副词和能愿动词应该放在“把”“被”的__前__面。9、“有志...

幼儿园小班语言《小手和小脚》教案
我有两只小小脚,会走路,会跑步,我的小脚本领大。 幼儿园小班语言《小手和小脚》教案 篇2 活动目标: 1、能知道自己有小手和小脚,了解它们的简单用途。 2、能感受儿歌的韵律,根据自己的理解,学者改编儿歌。 活动重点: 让幼儿了解自己小手小脚的简单用途。 难点: 教育幼儿能简单的仿编诗歌。 活动准备: 1、...

关于如何提高自己的人际交往能力?
这几句适当的话,能够帮我们很大的忙,解决我们生活当中大大小小的问题,因此,我们能够就地运用我们的口才,对于我们的生活很大的益处,口才对一个人的重要性不言而喻。 学习口才的重要性 一个会说话的人,可以流利地表达出自己的意图,也能够把道理说得很清楚、动听,使别人很乐意接受。有时候还可以立刻从问答中测定对方...

幼儿园大班春节语言教案
互动问题: 1.在过春节的时候你最高兴的事是什么 2.过春节时你最喜欢做的事是什么 3.新的一年里你最大的心愿是什么 三.我是小小演说家 用比较完整的语言把自己的所见,所闻,所感表达出来 四.结束活动 互动,听音乐边唱歌曲《新年好》边做律动 教学反思 1. 大班是学习语言的最佳时期,做为幼儿教师,必须...

临颍县13837106875: c语言一些小小的问题
宾残内美: delay(uchar data )不可以这样写, 因为这个函数你是调用,而不是定义,函数参数的定义,在函数的定义里定义,而不能在调用过程中定义,可以在函数体中定义和你函数名字一样的变量,这个没影响,但你自己要分清什么时候用的是函数,什么时候用的是函数,别混淆了.

临颍县13837106875: c语言的小问题
宾残内美: 编译器的精度是有点不正常的,当你的是float型的数据时,它就会有一小小的差别,就像你的运行结果显示的一样,所以,不要用if( a==13.5) 如果你输入的a确实是13.5,编译器有时也会理解为13.4999什么的.所以,a==13.5就完全失去了意义的 对于这种问题,完全归结为编译器的问题.

临颍县13837106875: c语言的小小问题 -
宾残内美: 是你的scanf里面的格式化字符串的问题,如果你要写 scanf("%4d+%3d",你键盘输入...

临颍县13837106875: C语言小问题 随便进来看看
宾残内美: #include <stdio.h>int choose(int num,int del) { int i; int a[100]; for(i=0;i<num;i++) a[i]=1; //圈内人状态初始化,为1表示在圈内,为0表明已出圈; int sum=0, //循环记数; countOne=num; //累积记数初始化,大于1表明圈内人超过一; while(...

临颍县13837106875: C语言 小小问题 -
宾残内美: sub=-1; flag=0; for(i=0;i<k;i++) { if(str[i]==cc) { flag=1; sub=i;的地方添上以上代码就可以了....

临颍县13837106875: C语言的小问题,大家来看看.
宾残内美: float是单精度浮点型double是双精度浮点型 具体占的空间,看操作系统而定,但是double始终是float的两倍 控制小数点主要是在输出的时候吧,printf("%.4f", ...); 或者是 printf("%.4lf", ...); float类型最多只能是精确到6位小数点 如果要超过只能定义为double

临颍县13837106875: c语言小问题 高手帮忙 -
宾残内美: 1关闭软件,重新打开软件,再编程试试 2你看看编译那有没有这个提示compiling... error spawning cl.exe ,如果有的话 解决方法如下: 方法一:把软件卸载,重新装一遍 方法二:有点麻烦,但不用重装软件打开 Microsoft Visual C++ -->工具 --...

临颍县13837106875: 急!关于一道c语言的问题?大家进来看看吧 -
宾残内美: 答案是GFEDCB解释:刚开始字符指针chp指向b[7]的地址,即字符串结束标志'\0'的地址,然后执行while语句,--chp的意思是指针chp向前移动一个单位,即指向前一个字符...

临颍县13837106875: 一个小小的C语言问题
宾残内美: i=5 i+=++i;相当于I=6+6,等于12, 因为++在前,是先自增再计算 i+=++i ==> i=i+(++i) ==> i=(++i)+i 先自增 i变成6 注意计算++I的时候,后面的I也变成6了... 所 以I=6+6=12

临颍县13837106875: 关于C语言的一点点小问题 -
宾残内美: printf("mianji=%6.3f",s);%6.3f是精度域宽和精度描述 指的是把s按浮点数格式输出 6.3指的是小数点前占6个位置,如果不足6位前面用空格填充 小数点后保留3位小数

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网