как узнать есть ли \0 в строке?

во время выполнения кода происходит утечка памяти, работаю я со строками, поэтому подозреваю, что где-то не стоит \0 в конце строки, каким образом можно проверить, есть ли он в строке?


Ответы (1 шт):

Автор решения: RomanMitasov

Символ \0 как раз обозначает рамки строки, так что, думаю, если заранее неизвестна длина строки, то узнать, есть ли в ней этот символ или нет, невозможно.

Если же длина проверяемой строки известна, попробуйте её просто пройти в цикле:

// L - длина
for (int i = 0: i < L; i++)
{
    if (str[i] == '\0') {
        /* ура, такой символ есть */
    }
}
→ Ссылка