Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 28.12.2015
Сообщений: 4
1

Каким бы стоило сделать тип char по умолчанию — signed или unsigned?

28.12.2015, 02:30. Показов 1595. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Появился такой вопрос: каким бы стоило сделать тип char по умолчанию - signed или unsigned?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.12.2015, 02:30
Ответы с готовыми решениями:

Тип signed char и unsigned char
Есть путаница в типах данных в Си signed char и unsigned char. Если объявить переменную следующим...

Тип char.Signed/unsigned.Отличие типов данных.
Вопрос немного может быть не туда... Прошу прощения. Пишу прошивку к контроллеру, на С. Интересует...

Как сделать unsigned или signed или long класс?
пример есть класс class MyClass{ //класс представляет из себя структуру данных и имеет методы и...

Char unsigned char signed char длинна Кааак
Здравствуйте. char l = {0,0}; l = 0xff; Почему, меня, компилятор не посылает куда...

5
590 / 413 / 135
Регистрация: 02.10.2008
Сообщений: 1,745
Записей в блоге: 1
28.12.2015, 08:15 2
Стандартом знак char не определён - отдан на откуп реализации.
0
Диссидент
Эксперт C
27706 / 17322 / 3812
Регистрация: 24.12.2010
Сообщений: 38,979
28.12.2015, 10:26 3
Цитата Сообщение от drfaust Посмотреть сообщение
отдан на откуп реализации.
В некоторых IDE позволяет установить для всего проекта. Есть также флаг у транслятора gcc -funsigned-char
Как поступить тебе? От собственного вкуса и решаемых задач.
Лично я часто использую char вместо int, когда точно знаю, что значение невелико. И посему мне удобнее по-умолчанию считать char unsigned.
но самое лучшее - явно указывать, когда это имеет значение. Чтобы голова не болела потом.
0
6045 / 2160 / 753
Регистрация: 10.12.2010
Сообщений: 6,005
Записей в блоге: 3
28.12.2015, 10:45 4
Отвечу сложно.
Цитата Сообщение от trueprogrammer Посмотреть сообщение
каким бы стоило сделать тип char по умолчанию - signed или unsigned?
В условиях реального применения переменных такого типа? Никаким. То есть оставить как есть.
Цитата Сообщение от trueprogrammer Посмотреть сообщение
каким бы стоило сделать тип char по умолчанию - signed или unsigned?
Если бы была возможность сделать лучше и переделать попутно еще некоторые аспекты языка? Тогда signed. Хотя бы ради консистентности с целыми типами. Но это чисто мечты/хотелки.
0
0 / 0 / 0
Регистрация: 28.12.2015
Сообщений: 4
28.12.2015, 12:35  [ТС] 5
Спасибо за ответы!
0
2664 / 2239 / 240
Регистрация: 03.07.2012
Сообщений: 8,141
Записей в блоге: 1
28.12.2015, 16:53 6
Думаю, его не случайно сделали неопределенным. Си активно используется на компьютерах разной архитектуры и для разных микропроцессоров. Есть процедуры, где неважно - знаковый он или беззнаковый, но важна эффективность. Представим, что у процессора есть битовый беззнаковый сдвиг вправо, а знакового нет (или наоборот). Что делать с процедурами, использующими команды типа (chr>>3)&7? Пусть у них chr знаковый, а у нашего процессора беззнаковый. И придется компилятору вместо пары команд делать несколько, имитируя ненужную в общем знаковость...
0
28.12.2015, 16:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.12.2015, 16:53
Помогаю со студенческими работами здесь

Signed char перевести с unsigned char
Приветствую! Помогите решить проблему с переводом. Есть строка вида:...

Значения типов данных (signed, unsigned, char)
Програмирую я месяца два,но не понимаю значения типов данных : signed, unsigned, char...Помогите..

Надо перевести переменную типа unsigned char* в signed int и обратно
у меня есть переменная типа unsigned char*, мне нужно перевести ее в signed int , провести...

Определение диапазонов переменных типов char, short, int и long (как signed, так и unsigned)
Вроде до этого все читал внимательно, задание понимаю, как реализовать - не знаю. С только начал...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru