У книзі "Повна довідка C" згадується, що charза замовчуванням не підписано.
Але я намагаюся перевірити це за допомогою GCC, а також Visual Studio. Він приймає його як підписане за замовчуванням.
Який з них правильний?
charможе бути без підписання, як правило, використовуйте a, intщоб прочитати значення з використанням getchar(), яке може повернутися EOF. EOFзазвичай визначається як -1або інше від'ємне значення, яке зберігання в значенні unsignedне є тим, що потрібно. Ось декларація: extern int getchar();BTW, ця рекомендація також походить з книги "C: Довідковий посібник".
charвипадку вам доведеться використовувати intдля зберігання повернутого значення.