what is different form, follow as:
(1)code XBYTE *AA[]={...}; (2)code void (*BB[])(void)={...};
What are you trying to achieve?
i trace some codes, and the coding above is not realizing.
The first one is a stored in code memory array of pointers to XDATA data type. The second is a stored in code memory array of pointers to functions with no arguments and no return value. Any decent book on the C programming language should give you answers to questions like these. - mike
Sorry for the typo. Of sourse, it's XBYTE data type rather than XDATA data type.
"Of sourse, it's XBYTE data type rather than XDATA data type." XBYTE is one of Keil's Absolute Memory Access Macros, from ABSACC.H - see the C51 Manual. Using that in a variable definition won't work. Presumably, the OP has some other definition of XBYTE...?
"the coding above is not realizing." Sorry, what do you mean by that? Do you mean that it doesn't compile? If so, there's probably a fault in your definition of XBYTE. If you're using the standard Keil definition of XBYTE, then it will never compile - read the description of XBYTE in the C51 Manual.