Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Duvida referente a declaracao da String

Ola Pessoal;

#include <stdio.h>

int main() { char mapa[5] [10+1]; (Nessa declaracao 10+1, pq nao declaramos tb 5+1?)

Obrigado
1 resposta
solução!

Oi Everson, tudo bem?

A declaração char mapa[5][10+1]; é usada para criar uma matriz de caracteres, ou seja, um array bidimensional. Nesse caso, a matriz tem 5 linhas e cada linha tem capacidade para armazenar 11 caracteres.

O 10+1 é usado para acomodar o caractere de nova linha ('\n') que é adicionado ao final de cada string quando você lê uma linha do arquivo. Isso é necessário porque em C, as strings são terminadas com um caractere nulo ('\0'), então você precisa de um espaço extra para ele.

No entanto, o número 5 representa o número de linhas na matriz e não precisa de um espaço extra, porque cada linha é uma entidade separada e não precisa de um caractere de terminação como as strings.

Então, a declaração char mapa[5][10+1]; cria uma matriz de 5 strings, onde cada string pode ter até 10 caracteres mais o caractere de terminação.

Um abraço e bons estudos.