检查字符变量的值

Mic*_*der -1 c arduino

我正在为Arduino编写一些代码,我不确定我是否正确检查了这个字符变量的值.你能告诉我这是否正确:

const char* front = "front";
const char* back = "back";

eyeballs(front);
eyeballs(back);

void eyeballs(const char* frontOrBack){ 

if (frontOrBack == "front") {
    digitalWrite(frontEyes, LOW);}//end if   
  else if (frontOrBack == "back") {
    digitalWrite(backEyes, LOW);}//end else*/
}  
Run Code Online (Sandbox Code Playgroud)

P.P*_*.P. 5

您需要使用strcmp()比较C字符串.你做的是指针比较.

if ( strcmp(frontOrBack, "front") == 0 ) {
   digitalWrite(frontEyes, LOW);}//end if   
  else if ( strcmp(frontOrBack, "back") == 0 ) {
    digitalWrite(backEyes, LOW);}//end else*/
}  
Run Code Online (Sandbox Code Playgroud)

在这个比较中,

if (frontOrBack == "front") {
Run Code Online (Sandbox Code Playgroud)

将指针值frontOrBack与字符串文字的地址进行比较"front"(在表达式中,字符串文字将转换为指向其第一个元素的指针).