RMC信息的字符串内容:$GPRMC,104050,A,1234.1234,N,12345.1234,W,0.15,300.65,191182,,,,,,
部分程序如下:
void loop(){
uint32_t tmp;
readline();
if(strncmp(buffer,"$GPRMC",6)==0){ //由GPRMC字符串颉取数据 buffer是字符串数组 储存RMC的信息字符串 parseptr是一个指针变量
parseptr=buffer+7;
tmp=parsedecimal(parseptr);
hour=tmp/10000+8;
minute=(tmp/100)%100;
second=tmp%100;
parseptr=strchr(parseptr,',')+1
status=parseptr[0];
parseptr+=2;
//latitude
latitude=parsedecimal(parseptr);
if(latitude!=0)
{
latitude*=10000;
parseptr=strchr(parseptr,',')+1;
if(parseptr[0]!=',')
latdir=parseptr[0];
我的问题是:parseptr=buffer+7 这个是什么意思?是指针变量parseptr指向buffer[7]吗?还是指向buffer[7]后面所有地址?
还有这个parseptr=strchr(parseptr,',')+1
status=parseptr[0];
parseptr+=2;
是啥意思?能帮我具体详细解释一下吗?strchr()这个函数我知道是什么意思,只是我问的这两个问题要是按我的理解就存在矛盾,所以我想您帮我详细说一下,谢谢你啦!新年快乐! |