!isalpha( str[first] ) ? ( return isPalindrome( str, ++first, last ) ) : return isPalindrome( str, first, --last ) ;
我收到一个语法错误。
最佳答案
那是不允许的,因为 return
不允许在表达式中;它只允许在语句的顶层。 (任何表达式都可以用作语句,但反之则不然。)你可以这样写:
return !isalpha(str[first])
? isPalindrome(str, ++first, last)
: isPalindrome(str, first, --last);
或者这个:
if (!isalpha( str[first] )) {
return isPalindrome( str, ++first, last );
} else {
return isPalindrome( str, first, --last );
}
关于c++ - 我可以像这样使用条件运算符吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20580068/