Escolar Documentos
Profissional Documentos
Cultura Documentos
VETORES
Um vetor um caso especial de matrizes. Um vetor nada mais que
uma matriz unidimensional. Normalmente usa-se o termo vetor, para o
caso de matrizes com apenas uma dimenso, e reserva-se o termo matriz
para indicar duas ou mais dimenses.
importante notar que vetores, matrizes bidimensionais e matrizes de
qualquer dimenso so caracterizadas por terem todos os elementos
pertencentes ao mesmo tipo de dado. Em outras palavras, uma vez
declarado que um vetor/matriz do tipo int, ele no admitir a insero
de valores do tipo float, por exemplo. Dizemos, portanto, que
vetores/matrizes so estruturas de dados homogneas. Para se declarar
um vetor podemos utilizar a seguinte forma geral:
tipo_da_varivel nome_da_varivel[tamanho];
Quando o C v uma declarao como esta ele reserva um espao na
memria suficientemente grande para armazenar o nmero de clulas
especificadas em tamanho. Por exemplo, se declararmos:
float exemplo[20]
Na linguagem C a numerao comea sempre em zero. Isto significa que,
no exemplo acima, os dados sero indexados de 0 a 19. Para acess-los
vamos escrever:
exemplo[0] exemplo[1] . . . exemplo[19]
Mas ningum o impede de escrever:
exemplo[30]....exemplo[103]
Por qu? Porque o C no verifica se o ndice que voc usou est dentro
dos limites vlidos. Este um cuidado que voc deve tomar. Se o
programador no tiver ateno com os limites de validade para os ndices
ele corre o risco de ter variveis sobrescritas ou de ver o computador
travar. Bugs terrveis podem surgir.
STRINGS
Strings so vetores de char. Nada mais e nada menos. As strings so
o uso mais comum para os vetores. Devemos apenas ficar atentos para o
fato de que as strings tm o seu ltimo elemento como um '\0'. A
declarao geral para uma string :
char nome_da_string[tamanho];
Devemos lembrar que o tamanho da string deve incluir o '\0' final. A
biblioteca padro do C possui diversas funes que manipulam strings
adequadamente. Estas funes so teis pois no se pode, por exemplo,
igualar duas strings:
string1 = string2; /* NO faa isto */
Fazer isto um desastre. Somente com um pleno entendimento de
ponteiros que possvel compreender o porqu disto. As strings devem
ser igualadas elemento a elemento.
strcpy()
A funo strcpy() copia a string-origem para a string-destino. Seu
funcionamento semelhante ao da rotina apresentada na seo anterior.
As funes apresentadas nestas sees esto no arquivo cabealho
string.h. Sua forma geral :
strcpy(string_destino, string_origem);
strcat()
A funo strcat() concatena (ou seja, une/junta) duas strings. Ela tem
a seguinte forma geral:
strcat(string_destino, string_origem);
A string de origem permanecer inalterada e ser anexada ao fim da
string de destino
strlen()
A funo strlen() retorna o comprimento da string fornecida. O
terminador nulo no contado. Isto quer dizer que, de fato, o
comprimento do vetor da string deve ser um a mais que o inteiro
retornado por strlen(). Sua forma geral :
strlen(string);
Um exemplo do seu uso:
strcmp()
A funo strcmp() compara duas strings. Sua forma geral :
strcmp(string1,string2);
H trs possveis valores de retorno desta funo:
-1: Caso a string1 anteceda, alfabeticamente, a string2.
0: Caso a string1 seja idntica a string2
1: Caso a string1 suceda, alfabeticamente, a string2.
Em resumo, se as duas strings forem idnticas a funo retorna zero. Se
elas forem diferentes a funo retorna um valor diferente de zero. Um
exemplo da sua utilizao: