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

Использование переменной типа char в цикле for

14.08.2013, 23:17. Показов 8521. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребята, подскажите пожалуйста, как использовать 8-ми битную переменную в цикле for?
Неправильный пример - for(char i = 0; i < N; i++)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.08.2013, 23:17
Ответы с готовыми решениями:

Использование знака пробел при вводе переменной типа char[]
Доброго времени суток! При идентификации переменных при применении знака пробел, все, что идет до...

При присваивании символа unicode переменной типа char происходит выход за диапазон переменной
В программе при присваивании символа unicode переменной типа char происходит выход за диапазон...

Как присвоить значение одного из элементов массива типа char переменной типа int?
С++ начал буквально только что так что буду благодарен за терпение и понимание ) Сразу оговорюсь...

Получить из переменной типа uint32_t* переменную типа char*
Всем добрый день. Помогите получить из переменной типа uint32_t* переменную типа char*. Заранее...

16
50 / 50 / 4
Регистрация: 17.11.2012
Сообщений: 229
Записей в блоге: 1
14.08.2013, 23:20 2
а зачем? как меня учили арифметический цикл должен служить только для задания количества шагов цикла, и мне советовали кроме простых итераций над интовыми переменными ничего не делать там, а искать другое решение.
0
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
14.08.2013, 23:23 3
Цитата Сообщение от laconic Посмотреть сообщение
Неправильный пример - for(char i = 0; i < N; i++)
чем неправильный-то?
0
~ Эврика! ~
1256 / 1005 / 74
Регистрация: 24.07.2012
Сообщений: 2,002
14.08.2013, 23:32 4
Цитата Сообщение от Jupiter Посмотреть сообщение
чем неправильный-то?
Починил: for(uint8_t i = 0; i < N; i++)
1
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
14.08.2013, 23:38 5
Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
Починил
про беззнаковость ничего несказано
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
15.08.2013, 00:37 6
Цитата Сообщение от laconic Посмотреть сообщение
Неправильный пример - for(char i = 0; i < N; i++)
Он правильный при условии N <= 127
0
163 / 104 / 14
Регистрация: 17.10.2012
Сообщений: 488
15.08.2013, 00:45 7
либо unsigned
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
15.08.2013, 01:00 8
Цитата Сообщение от laconic Посмотреть сообщение
Неправильный пример
Так можно сказать про любой цикл, независимо от того какой используется тип signed или unsigned. unsigned - не ответ на вопрос.
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
15.08.2013, 12:39 9
Цитата Сообщение от castaway Посмотреть сообщение
Он правильный при условии N <= 127
char может быть и беззнаковым на некоторых системах.

Не по теме:

Кстати, известно, что sizeof(char)==1. Но может ли байт быть больше 8 битов, чтобы char мог представлять числа >255?

0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
15.08.2013, 12:41 10
Цитата Сообщение от Tulosba Посмотреть сообщение
char может быть и беззнаковым на некоторых системах.
Какая разница? Он все равно будет правильным при условии N <= 127.
0
:)
Эксперт С++
4773 / 3267 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
15.08.2013, 12:48 11
Цитата Сообщение от castaway Посмотреть сообщение
Он все равно будет правильным при условии N <= 127.
Будет. Но так же будет и при N<=255.
0
8 / 8 / 0
Регистрация: 14.08.2013
Сообщений: 99
15.08.2013, 16:22 12
Цитата Сообщение от OhMyGodSoLong Посмотреть сообщение
Починил: for(uint8_t i = 0; i < N; i++)
что значит uint8_t?
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
15.08.2013, 16:26 13
Цитата Сообщение от Atlant_V Посмотреть сообщение
что значит uint8_t?
Бесзнаковый целый тип размером 8 бит. Определен в заголовочном файле cstdint.
0
8 / 8 / 0
Регистрация: 14.08.2013
Сообщений: 99
15.08.2013, 18:18 14
Цитата Сообщение от castaway Посмотреть сообщение
Бесзнаковый целый тип размером 8 бит. Определен в заголовочном файле cstdint.
пример использования можно с объяснением?
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
15.08.2013, 18:24 15
Цитата Сообщение от Atlant_V Посмотреть сообщение
пример использования можно с объяснением?
uint8_t то же самое что и unsigned char.
C++
1
2
3
4
5
6
7
8
9
#include <cstdint>
#include <iostream>
 
int main()
{
    uint8_t i = 255;
    std::cout << i << std::endl;
    return 0;
}
Это фундаментальный тип. Мой тебе совет: прочти любую книгу по C++ от начала и до конца несколько раз.
http://ru.cppreference.com/w/cpp/language/types
0
8 / 8 / 0
Регистрация: 14.08.2013
Сообщений: 99
15.08.2013, 21:18 16
Спасибо! Я просто не знаком с такой записью. а книг мне еще ​​много надо читать, знаю.
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
15.08.2013, 21:39 17
Цитата Сообщение от Atlant_V Посмотреть сообщение
а книг мне еще ​​много надо читать, знаю.
Много не надо, прочти одну хорошую.
0
15.08.2013, 21:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.08.2013, 21:39
Помогаю со студенческими работами здесь

Сколько значений переменных типа char можно записать в динамической памяти на место одной удаленной переменной типа int
Сколько значений переменных типа char можно записать в динамической памяти на место одной удаленной...

проблема с переменной типа char
int count(char a){ int c=0; int words=0; while(a!='\0'){ if(a==' ')++words; } return words;...

Очистка переменной типа Char
Здравствуйте.Столкнулся с такой проблемой. Походу программы мне понадобилось очистить переменную...

Вывод переменной типа char
Переменная x типа char. x = 65; cout &lt;&lt; x; Так выводиться &quot;A&quot;. x = 64; cout &lt;&lt; x+1;


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

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