Can we implement ctype functions through table?

2020-07-27 Thread Xiang Xiao
Hi all, For example, here is isspace implementation: # define isspace(c) \ ((c) == ' ' || (c) == '\t' || (c) == '\n' || (c) == '\r' || \ (c) == '\f' || (c) == '\v') The argument of c will evaluate 6 times, which make the following code suddenly fail: while (end != begin) { If (!is

Re: Can we implement ctype functions through table?

2020-07-27 Thread Gregory Nutt
What about platforms like AVR?  That would not be a good decision for AVR since it is a harvard machine and cannot access data in ROM without special operations. On 7/27/2020 9:55 PM, Xiang Xiao wrote: Hi all, For example, here is isspace implementation: # define isspace(c) \ ((c) == '

RE: Can we implement ctype functions through table?

2020-07-27 Thread Xiang Xiao
Decorate the table with IPTR and access the element through up_romgetc, just like printf series function. > -Original Message- > From: Gregory Nutt > Sent: Tuesday, July 28, 2020 12:44 PM > To: dev@nuttx.apache.org > Subject: Re: Can we implement ctype functions through table? > > What