0
コードのこの作品は、エラーerror: invalid operands to binary -
を与えている:エラー:バイナリに無効なオペランド -
if(memcmp(params , DEV_SERVICE_DISCOVERY , strlen(DEV_SERVICE_DISCOVERY)) == 0)
{
UINT8 *yes_no;
params = XSH_UtilFindNextToken(params);
yes_no = XSH_UtilFindNextToken(params);
params[yes_no - params - 1] = '\0';
rc = AppTest_ServiceDiscovery(params, yes_no , strlen(yes_no), pOut);
}
私はchar *yes_no
にUINT8 *yes_no
を変更し、それを解決してしまいました。しかし、なぜエラーが来て、なぜ解決したのか分からなかった。問題を説明してください。
ありがとうございます。
重複しない:ポインタを追加するのはナンセンスですが、それらを減算するとポインタが同じ配列に属する場合にオフセットを計算するのに便利です –
'params'の型は何ですか?私はそれが 'char *'だと思っています。もしそうなら、それはそれを説明する。ポインタの減算では、ポインタの型が同じである必要があります。 – kaylum
はいparamはchar *です。 – Abhinav