详细解释一下这个程序

#include<reg51.h>#define uchar unsigned char#define uint unsigned intuchar code DSY_CODE[] ={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};uchar Disp_Buffer[] ={0,0,0,0,0};uchar code DSY_BIT[] ={0xFE,0xFD,0xFB,0xF7,0xEF};uchar Count = 0;sbit K1 =P1^0;sbit K2 =P1^4;void Delay(uchar x){ uchar i; while (x--) for (i=0; i<120 ;i++);}void main(){ uchar i ; IE =0x8A; TMOD= 0x51; TH0=(65536-50000)/256; TL0=(65536-50000)%256; while (1) { if(K1==0) { Delay(10); if (K1==0) { TR1 = TR0 = 1 ; } } else { for (i=0;i<5;i++) { P2=DSY_BIT[i]; P0=DSY_CODE[Disp_Buffer[i] ]; Delay(2); } } } }void INT_T0() interrupt 1{ uint Tmp;TH0=(65536-50000)/256;TL0=(65536-50000)%256;if (++Count == 20){ TR1 =TR0=0; Count = 0; Tmp= TH1*256+TL1; Disp_Buffer[4]=Tmp/10000; Disp_Buffer[3]=Tmp/1000%10; Disp_Buffer[2]=Tmp/100%10; Disp_Buffer[1]=Tmp%100/10; Disp_Buffer[0]=Tmp%10; TH1 =TL1 =0; }}
2026年09月18日 15:52
有1个网友回答
网友(1):

Vector结构定义了二个重载的构造函数。

第一个构造函数: public Vector(double x, double y, double z)用在
vct1 = new Vector(1.0, 2.0, 3.0);
vct2 = new Vector(2.1, 2.1, 2.1);
构造出二个值vct1和vct2。

第二个构造函数: public Vector(Vector vector)用在
Vector result = new Vector(lvct);
构造出result这个值。

public static Vector operator +(Vector lvct, Vector rvct)是运算符重载函数,用在
vct3 = vct1 + vct2;
计算出vct3这个值。

public override string ToString()从Object类继承而来的虚拟方法,将Vector值的三个分量x、y和z转换成字符串,用在:
Console.WriteLine("vct1=" + vct1.ToString());
Console.WriteLine("vct2=" + vct2.ToString());
Console.WriteLine("vct3=" + vct3.ToString());

回答完毕,收工!!