|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.03.2013, 20:06 | #1 |
Пользователь
Регистрация: 04.10.2011
Сообщений: 74
|
вместо 0 и 1 в массив из файла записываются 48 и 49
Добрый вечер!
Есть текстовый файл, содержащие только нули и единицы без пробелов. Когда пытаюсь считать файл в массив, вместо 0 и 1 в него записываются 48 и 49. Записываю таким образом: Код:
(Массиву mas1 присваивать тип сhar нельзя, потому что в дальнейшем не будет выполняться операция "логическое ИЛИ") Последний раз редактировалось Faton 11; 07.03.2013 в 20:10. |
07.03.2013, 20:14 | #2 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,341
|
Код:
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
07.03.2013, 20:18 | #3 |
Пользователь
Регистрация: 04.10.2011
Сообщений: 74
|
Это не хорошо =) Или может кто-нибудь знает, как осуществить операцию "логическое ИЛИ" между двумя char-ами?
|
07.03.2013, 20:26 | #4 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,341
|
А по-моему вполне допустимо
А чем char'ы от чисел отличаются (в смысле битовых операций)? Просто логическое "или" будет равно 48 или 49. Вы, конечно, можете использовать функции для преобразования цифры-символа в число, но это неоправданно, когда достаточно вычесть 48.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
07.03.2013, 20:29 | #5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Код:
I'm learning to live...
|
07.03.2013, 20:55 | #6 |
Пользователь
Регистрация: 04.10.2011
Сообщений: 74
|
Спасибо всем, кажется, обошлось =)
|
07.03.2013, 21:03 | #7 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
08.03.2013, 00:32 | #8 | |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,341
|
Цитата:
Кстати, short int, вроде, 16 бит - не будет ли захвачено 2 символа (в ascii)?
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
|
08.03.2013, 12:51 | #9 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
08.03.2013, 14:36 | #10 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,341
|
Остаётся char (-128..127) или unsigned char (0..255). В си ведь все равно там будет храниться число, а не буква, как в паскале (может неправильно выразился - при выводе со спецификатором d будет выведено число), правда, придётся вычитать 48, чтобы хранились 0 и 1, так как считать сразу 0 или 1, как число, вроде не получится.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не понятно почему, но строки не записываются в файл | Trinock | Общие вопросы C/C++ | 5 | 11.11.2011 23:03 |
Имя файла вместо пути (Delphi) | ChEaTeR-abc | Помощь студентам | 2 | 13.07.2010 16:39 |
не записываются данные по указанному адресу | s2dentishe | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 27.05.2010 14:42 |
Данные записываются в бд не в том порядке, в котором надо. | Krasi | PHP | 13 | 12.03.2010 11:40 |