0 / 0 / 0
Регистрация: 13.05.2015
Сообщений: 1
1

Разное количество итераций циклов, где верхняя граница одного - int, второго - char

13.05.2015, 16:47. Показов 1058. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите, пожалуйста.
Почему такой цикл выполняется 12 раз?
C++
1
2
int w[10];
for (int i=0; w[i];i++)
А такой 20 раз:
C++
1
2
char w[10];
for (int i=0; w[i];i++)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.05.2015, 16:47
Ответы с готовыми решениями:

Структура элемента массива игрушка: название, цена, цвет, возрастной диапазон - нижняя граница, верхняя граница
Структура элемента массива игрушка: название, цена, цвет, возрастной диапазон - нижняя граница,...

Асимптотичная верхняя граница
1. Найти асимптотичную верхнюю границу решения рекуррентного соотношения T(n) = 4T(n/2) + (n^2...

Верхняя граница рандома
Методы Next и NextDouble класса Random возвращают число , как написано на сайте msdn, которое не...

Верхняя и нижняя граница типов
Здравствуйте, подскажите пожалуйста есть ли в С++ функции подобные low и high из Pascal, чтобы...

2
0 / 0 / 0
Регистрация: 30.04.2015
Сообщений: 13
13.05.2015, 17:04 2
по идее при выходе компьютера за пределы прописанных 10(20) элементов он идет в следующий участок памяти где не хранятся элементы масива, поэтому компьютер будет проходить по памяти до нахождения участка (к примеру пока не найдет запись в памяти из 16-ти 0 {0000000000000000})
0
Модератор
Эксперт С++
13496 / 10751 / 6406
Регистрация: 18.12.2011
Сообщений: 28,687
13.05.2015, 17:12 3
Объявление массива не инициализирует его.
Поэтому выполнение цикла дает неопределенное поведение программы,
т.к. в w может оказаться что угодно.
Лично у меня оказались значения -858993460(0xсссссссс) и программа слетает при выходе за пределы массива.
0
13.05.2015, 17:12
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.05.2015, 17:12
Помогаю со студенческими работами здесь

Почему в вывод цикла попадает верхняя его граница?
Вопрос, почему в Java если вывести от 1 до 10, результат будет конечный 9, а в Pascal, если вывожу...

Ошибка: cannot convert 'int (*)[50]' to 'int*' for argument '1' to 'void vvod2m(int*, int*, int*, char)'Х2
Матрицы An1*m1 и Bn2*m2 вводить с клавиатуры (размерности >3, m1=n2). Выполнять через подпрограммы....

Повторный ввод при введенном отрицательном количестве элементов,и если верхняя граница массива меньше нижней
Привет,подскажите,как сделать повторный ввод в программе,если введенное количество элементов...

Реализация функции char *padl(const char *string, int len, int c=' ')
Реализовать функцию возвращающую указатель на новую строку длины len, полученную из string либо...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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