串口设置问题

中文QNX 讨论: 欢迎大家灌水,讨论有关QNX 问题。
回复
caicaiHARRY
Senior Member
帖子: 10
注册时间: 周二 10月 11, 2011 2:32 pm

串口设置问题

帖子 caicaiHARRY » 周四 10月 13, 2011 8:26 pm

--------------------------------------------------------------
void set_serial_speed(int fd,int speed)
{
speed_t SpeedArr[] = {B115200,B57600,B38400,B19200,
B9600,B4800,B2400,B1200,B300};
int NameArr[] = {115200,57600,38400,19200,
9600,4800,2400,1200,300};
int i;
int Statue;
struct termios Opt;

tcgetattr(fd,&Opt);

for(i=0; i<sizeof(SpeedArr)/sizeof(int); i++)/*条件的含义?*/
{
if(speed == NameArr)
{
tcflush(fd,TCIOFLUSH);
cfsetispeed(&Opt,SpeedArr);
cfsetospeed(&Opt,SpeedArr);
Statue = tcsetattr(fd,TCSANOW,&Opt);
if(Statue != 0)
{
return;
}
tcflush(fd,TCIOFLUSH);
}
}
}
----------------------------------------------------
条件语句中的i<sizeof(SpeedArr)/sizeof(int)是什么意思,为什么要拿数组的大小和int的大小做比较?

xtang
Moderator
帖子: 1816
注册时间: 周五 9月 12, 2003 4:14 am
来自: China

Re: 串口设置问题

帖子 xtang » 周五 10月 14, 2011 10:22 pm

用来求出数组里元素的个数...

回复