原创 指针-指针数组-数组三者之间的关系

2010-9-1 08:13 2664 14 15 分类: 工程师职场

/****************lg05128018**************2009-8-19*****************************/
/***************指针,指针数组,数组三者之间的关系*****************************/
/****************lg05128018**************2009-8-19*****************************/
#include <reg52.h>
 
#define uchar  unsigned char
#define uint   unsigned int
#define BYTE   unsigned char


BYTE s0[7]={"data0\r\n"}; 
BYTE s1[7]={"data1\r\n"};
BYTE s2[7]={"data2\r\n"};


BYTE *p;   //指向一维数组的指针
BYTE *q[3];   //包含有3个指针元素,每个元素都可以指向一个BYTE数组或字符串


void send(unsigned char mydata) 
{
 ES=0;  
 TI=0;
 SBUF=mydata;
 while(!TI);
 TI=0;
    ES=1;
}
/******入口:count数组元素个数*********************************************/
/******入口:data1数组名***************************************************/
void UART1_send(BYTE count,BYTE *data1)
{
 BYTE j;
 for(j=0;j<count;j++)
    {
  //send(data1[j]);
  send(*(data1+j));
 }
}



void InitUART(void)
{
 SCON=0x50;        //设定串口工作方式
    PCON=0x00;        //波特率不倍增
 TMOD=0x20;        //定时器1工作于8位自动重载模式, 用于产生波特率
    EA=1;
    ES = 1;           //允许串口中断
    TL1=0xfd;
    TH1=0xfd;         //波特率9600
    TR1=1; 
}


/*********************************************************


  主函数


*********************************************************/
void main(void)
{
 InitUART();
 p=s1;  //指向数组S1,与p=&s1[0]等价,注意与 p=&s1[1]的区别
 UART1_send(7,s0);//打印data0
 UART1_send(7,p); //打印data1
    q[0]=s0;
    UART1_send(7,q[0]);//打印data0
    q[2]=s2;
    UART1_send(7,q[2]);//打印data2
 while(1)
 {
 }
}


/*********************************************************/



 

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户1584993 2010-9-1 14:45

近来都很忙吗,好像很长时间没有联系了,希望一切都好
相关推荐阅读
lg05128018_230568758 2010-10-24 17:21
4052原理,扩展四串口原理
4052原理 cd4051,cd4052,cd4053, 都是数控模拟开关,4051是单刀8掷开关,4052是2刀4掷开关,4053是3刀2掷开关,4051有3个控制端abc,控制8个输入端中的1个与...
lg05128018_230568758 2010-10-13 02:45
Menu
/*********************************************************************************/code KbdTabStruct...
lg05128018_230568758 2010-02-22 20:38
EBOOT通过bin文件形式读取、下载LOGO
一般的WINCE系统都是在EBOOT阶段初始化LCD,所以要想显示自己的LOGO就需要在EBOOT阶段将LOGO内容显示出来,读取LOGO的方式可以和从存储器中读取NK一样,具体位置自己来定义。 在E...
lg05128018_230568758 2010-02-22 20:27
nk.bin和nk.nb0的区别(转帖)
 nk.bin 和nk.nb0都是CE的镜像。然而,我们在下载的过程中常常会遇到,有时候下载nk.bin,有时确是下载nk.nb0,这两者到底有什么区别呢? 首先,NK.BIN中的内容是被压缩过的,N...
lg05128018_230568758 2010-02-03 17:53
从一维数组看sizeof和strlen
作者:王姗姗,华清远见嵌入式学院讲师。前几天学习一维数组的赋值的时候遇到这样一个问题,程序如下:char a[]="hello";        char b[5]={'h','e','l','l',...
EE直播间
更多
我要评论
1
14
关闭 站长推荐上一条 /3 下一条