繁体   English   中英

从C中的字符串切出字符

[英]cut characters from a string in C

我有一个电路,可从我的android程序通过蓝牙接收数据(特定字符数组)。

现在,我要做的是:重新编程微控制器,我希望从micrcontroller接收的阵列中过滤或提取一系列字符。

我的android传递了这三种char数组:

1. red#ILOVEYOU
2. blue#ILOVEYOULALALA
3. green#ILOVEDIANAROSECUSTODIO:)

我想提取red#或blue#或green#并将其传输到其他变量。 我的手机会在每种颜色的末尾发送一个“#”,因为我想它将使提取更加容易。

char Comp(char* This){

    while(Serial.available() > 0) // Don't read unless
    // there you know there is data
    {
        if(index < 99){
            inChar = Serial.read(); // Read a character
            if(inChar == '#'){

            }
            inData[index] = inChar; // Store it
            index++; // Increment where to write next
            inData[index] = '\0'; // Null terminate the string

        }
    }

    if(strcmp(inData,This)  == 0){
        for(int i=0;i<19;i++){
            inData[i]=0;
        }
        index=0;
        return(0);

    }
    else{
        return(1);
    }
}

这是我在arduino中的代码。 您会看到,它在某个非常短的时间内收到一个字符,然后将其添加到char数组变量中。

您可以在c中使用strtok()函数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM