Оператор while (C++)

Циклически выполняет оператор до тех пор, пока значение параметра выражение не будет равно нулю.

while ( expression ) 
   statement

Заметки

Значение параметра выражение проверяется перед каждым выполнением цикла, поэтому цикл while выполняется ноль или несколько раз. Параметр выражение должен иметь целочисленный тип, тип указателя или тип класса с однозначным преобразованием в целочисленный тип или тип указателя.

Выполнение цикла while может прекращаться, когда в его теле будет выполнен оператор break, goto или return. Чтобы прервать текущую итерацию без выхода из цикла while, используйте оператор continue. Оператор continue передает управление в следующую итерацию цикла while.

В следующем коде цикл while используется для усечения символов подчеркивания в конце строки.

// while_statement.cpp

#include <string.h>
#include <stdio.h>
char *trim( char *szSource )
{
    char *pszEOS = 0;

    //  Set pointer to character before terminating NULL
    pszEOS = szSource + strlen( szSource ) - 1;

    //  iterate backwards until non '_' is found 
    while( (pszEOS >= szSource) && (*pszEOS == '_') )
        *pszEOS-- = '\0';

    return szSource;
}
int main()
{
    char szbuf[] = "12345_____";

    printf_s("\nBefore trim: %s", szbuf);
    printf_s("\nAfter trim: %s\n", trim(szbuf));
}

Условие завершения вычисляется в начале цикла. Если символов подчеркивания в конце строки нет, цикл никогда не выполняется.

См. также

Ссылки

Операторы перебора (C++)

Ключевые слова в C++

Выражение do-while (C++)

Оператор for (C++)

Основанное на диапазоне выражение for (C++)