Safe version of ascii macros, add missing tolower_ascii
- [x] fixes a warning introduced in #23981
- [x] tests added / passed
- [x] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
- [ ] whatsnew entry

Using unparenthesized macro parameters is dangerous, so wrap `c` in braces.

Example warning fixed by adding `tolower_ascii()`:

```
In file included from pandas/_libs/lib.c:643:0:
pandas/_libs/src/parse_helper.h: In function ‘lowercase’:
pandas/_libs/src/parse_helper.h:141:26: warning: implicit declaration of function ‘tolower_ascii’; did you mean ‘toupper_ascii’? [-Wimplicit-function-declaration]
     for (; *p; ++p) *p = tolower_ascii(*p);
                          ^~~~~~~~~~~~~
                          toupper_ascii
```