strlen - o comprimento da string às vezes é aumentado em 1
Estou fazendo algumas perguntas sobre quebra-cabeças. Na maioria dos casos, consigo encontrar a resposta certa, mas com essa estou tendo problemas. Eu sei a resposta certa usando o compilador, mas não sei o motivo.
Dê uma olhada no código:
char c[] = "abc\012\0x34";
O que seriastrlen(c)
retornar, usando um compilador C padrão?
Meu compilador retorna 4 quando o que eu esperava era 3.
O que eu pensei éstrlen()
iria procurar a primeira ocorrência doNULL
caráter, mas de alguma forma o resultado é mais um do que eu esperava.
Alguma ideia do porquê?