自己编程犯的错

自己编程犯错汇总

脑残入坑for循环

for(k=0;k<50;k++)            //哈哈,最近特别喜欢用局部变量来节省空间,导致两个for循环用的一个变量,
{                            //出现问题自己推演了很久,才找出来问题关键。坑死自己啦。
	for(k=0;k<50000;k++)				   
	{						  
		if(k==2)
		{sec+=10;}
	}
}


优先级混淆导致判断出错

错误代码
for(i=0;i<4;i++)
{
	if(keybuf[index][i]&0x0f==0x0f)  keySta[index][i]=1;   
	else if(keybuf[index][i]&0x0f==0x00)keySta[index][i]=0;
}

自己来回看这段代码硬是没看出哪有不一样!一个一个对才把优先级问题给找出来;
因为丢了&运算的括号,导致先进行了==运算,再进行&运算,导致判断逻辑错误

正确代码
for (i=0; i<4; i++)  //每行4个按键,所以循环4次
{
	if ((keybuf[index][i] & 0x0F) == 0x00)keySta[index][i] = 0;		
	else if ((keybuf[index][i] & 0x0F) == 0x0F)keySta[index][i] = 1;
}

定时器:

void main()
{
	unsigned char cnt = 0;
	unsigned char i = 0;
	
	
	TMOD = 0x01; //定时器0 模式1
	TH0 = 0xB0;    //0.02ms定时
	TL0 = 0x00;
	TR0 = 1;
	
	while(1)
	{
		if(TR0==1)        //这里TF0被自己写错   写成TR0 进入死循环
		{
			TR0 = 0;           //在用软件判断进入中断后,第一件事就是清TF
			TH0 = 0xB0;        //千万记得要reload TH TL否则他就会从0开始计时;
			TL0 = 0x00;                
			cnt++;
			if(cnt>=50)
			{
				cnt = 0;
				i++;
				P0=NumberLED[i];    //这里P0 写成过P0^0 编译通过 显示异常 脑残的一B
				if(i>=10)
					i = 0;
			}
		}
	}

中断

使用中断前记得打开总中断EA = 1;和自己的中断ET0 = 1;
void InterruptTime0() interrupt 1   //中断向量要计算正确 计算公式为  x*8+3=中断向量地址
{
	TH0 = 0xfc;                //进入中断TR1 = 1是硬件自动操作的
	TL0 = 0x67;                //TH0 和TL0 记得要自己设置
	sec++;
	P0=0xff;                   //P0=0xff 是消除鬼影的作用
	switch(num)
	{
		case 0:ADDR2=0;ADDR1=0;ADDR0=0;P0=Numbuf[num];num++;break;
		case 1:ADDR2=0;ADDR1=0;ADDR0=1;P0=Numbuf[num];num++;break;
		case 2:ADDR2=0;ADDR1=1;ADDR0=0;P0=Numbuf[num];num++;break;
		case 3:ADDR2=0;ADDR1=1;ADDR0=1;P0=Numbuf[num];num++;break;
		case 4:ADDR2=1;ADDR1=0;ADDR0=0;P0=Numbuf[num];num++;break;
		case 5:ADDR2=1;ADDR1=0;ADDR0=1;P0=Numbuf[num];num=0;break;
		default:break;
	}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 提升编程水平的方法有很多,以下是一些建议: 1. 多写代码:通过不断编写代码来熟悉语言语法和提高编程能力。 2. 学习新语言:学习新的编程语言可以帮助拓宽编程视野。 3. 参加编程比赛:参加编程比赛可以提高自己的竞争意识和编程技巧。 4. 参加线下或在线编程课程:线下或在线编程课程可以帮助提高编程能力和知识水平。 5. 阅读编程书籍:阅读编程书籍可以了解编程原理和最佳实践。 6. 参与开源项目:参与开源项目可以帮助提高编程技巧和与他人合作的能力。 7. 与其他程序员交流:与其他程序员交流可以获得新的编程思路和技巧。 以上是一些建议,根据自己的情况和兴趣选择一两项并努力练习是提升编程水平的有效方法。 ### 回答2: 提升编程水平的关键在于不断学习和实践。以下是几个提高编程能力的方法: 1. 建立坚实的基础:首先要掌握基本的编程语言和算法知识,理解编程概念和原则。可以通过参加编程课程、阅读相关书籍或在线教程来学习。 2. 多做项目和练习:通过实践来巩固所学知识,解决实际问题。可以选择一些小项目来实践,挑战自己的编码能力。 3. 参与开源项目:参与开源社区的项目可以帮助你与其他开发者合作,学习他们的编程技巧和经验。通过与他人合作编写、维护和审查代码,提高自己的编程能力。 4. 阅读他人的代码:阅读其他程序员的代码可以了解不同的编程思路和技巧,并学习优秀的编码风格。可以通过GitHub等平台浏览和学习其他开发者的项目。 5. 不断学习新技术和工具:编程领域发展迅速,不断学习新的编程语言、框架和工具是提升自己的重要途径。可以参加技术讲座、研讨会等活动,了解最新的技术趋势。 6. 解决问题的能力:编程是解决问题的过程,要培养解决问题的能力。可以通过解决一些挑战性的编程问题来训练自己的思维能力和解决问题的方法。 7. 与其他开发者交流:参加技术社区活动或加入开发者论坛,与其他开发者交流和分享经验。通过与他人交流,不断学习,并且可以获得反馈和建议来改进自己的编程水平。 总之,提升编程水平需要坚持不懈的学习和实践,保持好奇心和学习态度。不断挑战自己,积累经验,才能成为一名优秀的程序员。 ### 回答3: 提升编程水平需要一定的方法和坚持不懈的努力。以下是几种提升编程水平的方法。 1. 学习不同的编程语言:学习多种编程语言可以有助于了解不同的编程概念和思维方式。掌握多种语言后,可以更灵活地处理不同的编程问题。 2. 注重理论知识:学习编程的理论知识是提升编程水平的关键。理解计算机科学的原则和概念可以帮助我们更好地设计和优化算法,解决复杂的问题。 3. 实践编程技巧:通过编写各种不同类型的项目和解决实际问题的编程挑战来提高自己的编程技巧。挑战自己,掌握各种算法和数据结构,并编写模块化、可重用的代码。 4. 学习开发工具和技术:熟练掌握开发工具和技术可以提高工作效率,使编程更加高效和便捷。了解和学习使用版本控制系统、调试器、集成开发环境等工具和技术。 5. 参与开源项目和协作:参与开源项目可以提供与其他有经验的开发人员交流的机会,从中学习他们的技术和经验,从而不断提高自己的编程水平。同时,通过与其他人协作,可以学习如何更好地与团队合作,提高项目管理和沟通能力。 总之,提升编程水平需要广泛的学习和实践。不断学习新知识,不断挑战自己,在实践中不断改进和完善自己的编程技能,才能不断提高自己的编程水平。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值