|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.11.2012, 19:21 | #1 |
Пользователь
Регистрация: 22.09.2012
Сообщений: 33
|
Обозначения
Что означает запись while(*strng) и if(! *strng) и что будет при этом происходить, если strng - указатель на символьную строку.
|
21.11.2012, 19:28 | #2 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
while(*strng) означает что цикл будет продолжаться, пока значение, на которое указывает указатель не станет равным нулю
Си позволяет записывать сокращеную форму проверки на ноль. В аналоге это бы выглядело так: while(*strng!=0). С if то же самое, но отрицание: Если указатель не указывает на ячейку памяти с нулем. P.S. Это исползуется при проходах по ASCIIZ строкам через указатели и итераторы
I'm learning to live...
|
21.11.2012, 19:32 | #3 |
С++
Форумчанин
Регистрация: 22.09.2008
Сообщений: 791
|
*strng - значение символа по указателю, while(*strng) эквивалентно while (*strng != 0), т.е. внутри цикла будут происходить какие-то операции, пока указатель не дойдет до нуль-символа.
while(! *strng) эквивалентно while (*strng == 0), т.е. действия будут выполняться пока strng указывает на нуль-символ(ы)
Форматируйте код, будьте людьми.
|
21.11.2012, 19:33 | #4 |
Пользователь
Регистрация: 22.09.2012
Сообщений: 33
|
Таким образом итерации будут повторяться, пока строка не кончится, а условие "if" проверяет не закончилась ли строка, или проверяется наличие в строке нуля?
|
21.11.2012, 20:13 | #5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Нет. IF в таком цикле как правило как пятое колесо у зайца.
I'm learning to live...
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
нужно написать в комментах обозначения функций | ilnar21 | Помощь студентам | 3 | 19.01.2011 14:46 |
обозначения на графике | ruavia3 | Microsoft Office Excel | 0 | 19.10.2009 16:26 |
Обозначения файла | Hookis | Общие вопросы Delphi | 20 | 21.08.2009 13:32 |
Подскажите пожалуста! есть ли переменная для обозначения дисковода? | Medyankin | Помощь студентам | 4 | 27.07.2008 15:58 |