|
MDK编译器.
有这么一个函数,是正常工作的,我把多余的参数去掉了。为了方便大家看明白。
GUI_DispStringHCenterAt((pPara->pBitmapItem + pPara->pItemInfo[pPara->NumItems - 1].Index)->pExplanation);
它就是显示一个字符串而已,是正常工作的。
然后我想用strcmp比较这个字符串,如下。
if(0 == strcmp((pPara->pBitmapItem + pPara->pItemInfo[pPara->NumItems - 1].Index)->pExplanation,"ABC"))
编译出错。
-------------------------------------------------------------------
pPara是一个结构体,如下:
typedef struct {
int NumItems;
const BITMAP_ITEM * pBitmapItem;
ITEM_INFO * pItemInfo;
} PARA;
PARA * pPara;
-------------------------------------------------
里面的pBitmapItemt和pItemInfo也是一个结构体。
typedef struct {
const GUI_BITMAP * pBitmap;
const char * pExplanation;
} BITMAP_ITEM;
typedef struct {
int Index;
} ITEM_INFO;
而且pPara->pItemInfo[pPara->NumItems - 1]这里看上去它还是个数组。。
----------------------------------------------------
请教用strcmp怎么解决这个问题? |
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|