Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Различия между двумя циклами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Почему выводит неправильное ,длинное число? http://www.cyberforum.ru/cpp-beginners/thread322564.html
я новичок,учу по книге.там задано #include <stdio.h> #include <iostream.h> int main(int nNumberofArgs, char* pszArgs) { int accumulator; for (;;){ int value=0; cout << "vvedite cislo"; cin...
C++ Вопрос по выводу символьных массивов Никак не могу понять, почему при наличии символьного массива, например char test = "test message", при его выводе вроде cout << "test: " << test << endl; или cout << "&test: " << &test << endl; (что... http://www.cyberforum.ru/cpp-beginners/thread322562.html
Borland C++. Вычисление значений функций C++
Помогите плиз составить программы решения задач. Насколько я знаю, программы не длинные и не сложные (для знающих), но я пока мало в этом шарю) Программы разветвляющихся структур 1. Вычислить...
C++ Как написать скрипт,находящий сумму чисел от 1 до заданного числа?
например я написал 5.хочу чтоб 1+2+3+4+5,выводил 15.вот что я сделал,я еще новичок,неделя учу. #include <stdio.h> #include <iostream.h> int main(int nNumberofArgs, char* pszArgs) { int...
C++ Динам. память, указатели, строки http://www.cyberforum.ru/cpp-beginners/thread322523.html
хелп) а то не успеваю все решить))) Задание 2 Написать программу которая позволяет пользователю ввести любое количество целых чисел, когда пользователь пожелает прекратить ввод, то все введенные...
C++ Рекурсия: вывод всех делителей заданного числа Помогите, Написать программу которая выводить все делители заданного числа. Рекурсией!!! подробнее

Показать сообщение отдельно
xAtom
915 / 740 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
19.06.2011, 16:33
Если сравнивать указатель в цикле то нужен последний адрес-элемента массива или буфера, чтобы завершить цикл до идентичности адресов памяти, такой приём в основном применяют для
написания кросс-процессорных алгоритмов типа STL.

C++
1
2
3
4
5
6
7
8
 const char *cp="hello";
 int cnt=0;
 
const char*  end = cp + strlen(cp);
while( cp != end ) {
       *cp++;
         cnt++;
}
---

в этом случае сравнивается данные из массива или буфера в нашем случае строки заканчиваются '\0' - до его окончания цикл будет завершён.
C++
1
while(*cp){++cnt; ++cp;}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru