Você está na página 1de 3

Estrutura do programa C /* comentrios */ #include <nome do arquivo> variveis globais prottipos das funes int main(void) { variveis locais

corpo da funo return(0); } tipo_de_retorno nome_da_funo(lista_de_parmetros) { variveis locais corpo da funo return(valor); ou return; } Diretiva #include Inclui arquivo da biblioteca padro #include <nome do arquivo> Inclui arquivo da diretrio atual #include "nome do arquivo" Tipos de dados Tipo Descrio Bytes Intervalo de valores Um nico caracter 1 0 a 255 char Nmeros inteiros 4 -2147483648 a +2147483647 int float Nmeros em ponto flutuante 4 3,4.10-38 a 3,4.1038 com preciso simples double Nmeros em ponto flutuante 8 3,4.10-4932 a 1,1.10-4932 com preciso dupla Diretiva #define Definio de macro (valor constante): #define nome valor Arranjos Declarao de vetores: tipo nome[tamanho]; Declarao de matriz: tipo nome[lin][col]; Declarao de string: char nome[tamanho]; Exemplos de inicializao: int vet[3]={20, 5, 1}; char uf[3]=RS;

Printf Exibe valores. printf(formato, valores); Formato %d %o %x %c %s %f %% Descrio Nmero inteiro decimal Nmero inteiro octal Nmero inteiro hexadecimal Um nico caracter String Nmero em ponto flutuante Exibe um %

Operadores relacionais Operador > >= < >= == != Operadores lgicos Operador && || !

Descrio Maior que Maior ou igual Menor que Menor ou igual Igual Diferente de Descrio AND lgico OR lgico NOT lgico

Funo getchar Leitura de caracter. var = getchar(); ou getchar(); Funo scanf Leitura de valores. scanf(formato, &variavel); Formato %d %f %lf %c %s Tipo int float double Um caracter Uma string. Espao em branco finaliza entrada.

Operador ternrio Avalia condio, se verdadeira assume valor1 seno valor2. (condio)?valor1:valor2 Operador sizeof Calcula tamanho em bytes ocupado por varivel, arranjo ou tipo. sizeof(expresso) ou sizeof(tipo) Operador de moldagem ou cast Converte valor de um tipo para outro. (tipo) valor Comando if Executa comandos condicionalmente. if(condio){ comandos a executar se condio verdadeira } else{ comandos a a executar se condio falsa } Comando do while Repete enquanto condio for verdadeira, testando no final do lao. do{ comandos a serem repetidos }while(condio); Comando while Repete enquanto condio for verdadeira, testando no incio do lao. while(condio){ comandos a serem repetidos; } Comando continue Ignorar o restante da passagem atual em um lao. continue;

Funo gets Leitura de string. gets(string); Operadores aritmticos Operador Descrio Atribuio = Soma + Subtrao Multiplicao * / Diviso (com valores int, o resultado no ter casas decimais) Resto da diviso inteira % Incremento pr ou ps-fixado ++ Decremento pr ou ps-fixado -Operadores combinados Expresso Normal a = a + b; a = a - b; a = a * b; a = a / b; a = a % b;

Expresso Simplificada a+=b; a-=b; a*=b; a/=b; a%=b;

Comando break Finaliza o lao atual break;

Comando for Cria um lao que contm um conjunto de comandos que ser executado um Passagem de parmetros por referncia nmero fixo de vezes. Neste caso passa-se o endereo da varivel como parmetro para a funo, para uma varivel de parmetro declarada como ponteiro. Permite alterar for(inicializao; condio; atualizao){ indiretamente o valor da varivel local na funo chamada. comandos a serem repetidos; funcao(&variavel); } Comando switch Compara uma varivel com diversos valores diferentes. switch(var){ case valor1: comandos a executar se var==valor1 break; case valor2: comandos a executar se var==valor2 break; default: comandos a executar se nenhum dos valores } Declarao de ponteiros Um ponteiro uma varivel declarada para armazenar o endereo de memria onde est armazenada outra varivel. tipo *nome_do_ponteiro; Operadores para ponteiros Operador & * Descrio (Endereo de) Fornece o endereo de memria onde est armazenada uma varivel. (Valor apontado por) Valor armazenado na varivel apontada por um ponteiro. Alocao Dinmica de Memria: <stdlib.h>

Operaes aritmticas com ponteiros Incrementar um ponteiro que aponta para vetor far com que ele aponte para o prximo elemento . Decrement-lo faz com que ele aponte para o elemento anterior. p++;

Declarao de variveis de estruturas struct etiqueta variavel; ... variavel.membro_1 = 0; Ponteiros para estruturas struct etiqueta *ponteiro; ... ponteiro = &variavel; ponteiro->membro_1 = 0; Funes de manipulao de strings : <string.h>

void *malloc(int tamanho)

char *strcpy(char *destino, char *origem)

Aloca dinamicamente uma rea de memria com o tamanho solicitado . Parmetros: tamanho: Quantidade de bytes a serem reservados. Deve-se chamar a ateno de que, por ser definido em bytes, na alocao de arranjos o tamanho no igual ao nmero de elementos. Deve-se utilizar a frmula num_elementos*sizeof(tipo). Valor de retorno: Retorna o endereo do incio da memria alocada, ou retorna NULL se no existir memria disponvel suficiente.

Copia o contedo de uma string para outra. Deve ser empregado para atribuio de strings, no lugar do operador normal de atribuio (=). Parmetros: destino: String que ir receber o contedo. origem: String cujo contedo ser copiado. Valor de retorno: A funo retorna o endereo do primeiro caracter da string destino.

Apontando para vetores O nome de um vetor (sem ndice) corresponde ao endereo do seu primeiro elemento. ponteiro = vetor; equivale a ponteiro = &vetor[0]; Valores em um vetor apontado por um ponteiro podem ser obtidos atravs do ponteiro (colocando o ndice nele, sem o *) ponteiro = vetor; v=ponteiro[0]; equivale a v=vetor[0];

Copia no mximo n caracteres de uma string para a outra. No coloca o '\0' no final de destino., a no ser que tenha atingido o final da string origem. Parmetros: Altera o tamanho da rea alocada anteriormente por malloc. destino: String que ir receber o contedo. Parmetros: mem: Endereo da memria a ser realocada. Deve-se passar nesta origem: String cujo contedo ser copiado. posio o ponteiro que anteriormente recebeu o retorno da funo n: Nmero mximo de caracteres a serem copiados. Valor de retorno: malloc. tamanho: Novo tamanho, em bytes, da rea alocada. Este valor pode ser A funo retorna o endereo do primeiro caracter da string destino. maior ou menor que o originalmente alocado. int strcmp(char *s1, char *s2) Valor de retorno: Compara o contedo de duas strings. Esta funo deve ser utilizada em Se a rea de memria no puder ser realocada retorna NULL, seno retorna o endereo da rea alocada, que deve ser atribudo novamente ao substituio aos operadores relacionais no caso de uso com strings. Parmetros: ponteiro. s1 e s2: As duas strings a serem comparadas. Valor de retorno: void free(void *mem) A funo retorna 0 (zero) se ambas o contedo de ambas as strings so Libera a rea de memria alocada previamente por malloc. iguais. Retorna algum valor maior que 0 se o contedo de s1 maior em Parmetro: mem: Endereo da memria a ser realocada. Deve-se passar nesta ordem que s2 e um valor menor que 0 se o contedo de s1 menor em posio o ponteiro que anteriormente recebeu o retorno da funo ordem que s2. malloc. int strncmp(char *s1, char *s2, int n) Valor de retorno: Compara apenas um trecho do incio de duas strings com tamanho Esta funo no retorna nenhum valor. especificado. Parmetros: Declarao de estruturas s1 e s2: As duas strings a serem comparadas. struct etiqueta { n: Nmero de caracteres a serem comparados. tipo membro_1; Valor de retorno: tipo membro_2; O mesmo da funo strcmp (ver acima). tipo membro_n; };

char *strncpy(char *destino, char *origem, int n)

void *realloc(void *mem, int tamanho)

int strcasecmp(char *s1, char *s2)

int tolower(int c) Compara o contedo de duas strings sem diferenciar a caixa (letras Converte uma letra para o formato minsculo. maisculas ou minsculas). Parmetros: int toupper(int c) s1 e s2: As duas strings a serem comparadas. Converte uma letra para o formato maisculo. Valor de retorno: O mesmo da funo strcmp. Funes diversas: <stdlib.h> char *strcat(char *destino, char *origem) void exit(int codigo)
Concatena strings, isto , copia o contedo da string origem ao final da string destino. O contedo anterior de destino preservado. Parmetros: destino: String que ir receber, no seu final, o contedo. Ela deve ter tamanho suficiente para armazenar o contedo atual mais o novo. origem: String cujo contedo ser acrescentado ao final da outra. Valor de retorno: A funo retorna o endereo do primeiro caracter da string destino. Esta funo finaliza a execuo do programa, podendo ser chamada a partir de qualquer funo, ou em substituio ao return, na funo main. Parmetros: codigo: Valor a ser retornado pelo programa. Por padro deve ser 0 (zero) no caso de fim normal, ou um valor maior que 0, caso o programa esteja sendo finalizado por alguma situao anormal. Valor de retorno: Esta funo no retorna.

Caracter "r" "w" "a" "+" "b" "t"

Descrio Abre o arquivo somente para leitura Cria um novo arquivo para escrita. Se j existir um arquivo com o mesmo nome, ele eliminado e recriado vazio Abre um arquivo para escrita no final do arquivo Acesso de leitura e escrita Arquivo binrio Arquivo texto

int fclose(FILE *arquivo)

Fecha um arquivo aberto, tornando-o indisponvel para o programa. Parmetros: arquivo: A varivel que recebeu o valor de retorno da funo fopen, correspondente ao arquivo a ser fechado. Valor de retorno: A funo retorna 0 (zero) se o arquivo pode ser fechado ou EOF se algum erro ocorreu. Arquivo Descrio Dispositivo de entrada padro: normalmente o teclado. stdin stdout Dispositivo de sada padro: normalmente o vdeo. stderr Dispositivo de sada de erros: sempre o vdeo.

int atoi(char *str) Converte uma string para um valor numrico inteiro. Conta o nmero de caracteres armazenados em uma string, antes do '\0'. Parmetros: Parmetros: str: String a ser convertida. str: A string que ter seu tamnho calculado. Valor de retorno: Valor de retorno: Retorna um nmero inteiro correspondente ao valor armazenado na string. Retorna o nmero de caracteres da string. int strlen(char *str)

Similar funo printf, mas permite que seja especificado o arquivo de double atof(char *str) sada (printf sempre imprime em stdout). Funes de teste de classe de caracter: <ctype.h> Converte uma string para um valor numrico em ponto flutuante. Parmetros: Todas estas funes recebem um nico caracter como parmetro e retornam Parmetros: arquivo: Em qual arquivo ser escrito o contedo. muito comum ser verdadeiro (um valor diferente de 0) se a condio foi satisfeita, ou falso (0) str: String a ser convertida. utilizado com stderr para apresentar mensagens de erros e advertncias em outro caso. Valor de retorno: ao usurio. Retorna um valor double correspondente ao contedo armazenado na formato: A string de formato idntica da funo printf. int isalnum(int c) string. ...: conjunto varivel de dados a serem escritos. Testa se o caracter passado por parmetro uma letra ou dgito numrico. Valor de retorno: Argumentos de linha de comando Assim como printf, esta funo retorna o nmero de caracteres que foram int isalpha(int c) escritos. int main(int argc, char **argv) Testa se o caracter passado por parmetro uma letra.

int fprintf(FILE *arquivo,char *formato,...)

int isdigit(int c) int islower(int c) int isupper(int c) int isspace(int c)

argc: Nmero de argumentos fornecidos na linha de comando, contando int fgetc(FILE *arquivo)
o prprio nome do programa.

Testa se o caracter passado por parmetro um dgito numrico. Testa se o caracter passado por parmetro uma letra minscula. Testa se o caracter passado por parmetro uma letra maiscula.

argv: um vetor de strings (na forma de ponteiro para ponteiros para Parmetros: char) onde cada posio aponta para um dos argumentos passados. arquivo: A varivel que recebeu o valor de retorno da funo fopen,
correspondente ao arquivo que ser lido. argv[0] sempre o nome do programa, argv[1] o segundo argumento Valor de retorno: fornecido, e assim por diante. Retorna o caracter lido, em caso de leitura bem sucedida, ou EOF, se o final do arquivo foi alcanado. Funes de entrada e sada em arquivos: <stdio.h>

L o prximo caracter de um arquivo aberto.

Abre um arquivo, tornando-o disponvel a ser acessado pelo programa Testa se o caracter passado por parmetro um espao em branco. O Parmetros: caracter correspondente barra de espaos, quebra de linha e tabulaes so nome: String contendo o nome do arquivo a ser aberto. considerados brancos. modo: Modo de abertura do arquivo. Indica qual tipo de acesso ao arquivo est sendo solicitado para o sistema operacional. Deve ser uma Funes de converso de caracter: <ctype.h> string contendo uma combinao vlida dos caracteres apresentados na tabela abaixo. Recebem um caracter por parmetro retornam este caracter convertido para outro formato (caixa).

FILE *fopen(char *nome,char *modo)

int fputc(int c, FILE *arquivo)

Escreve um caracter em um arquivo aberto. Parmetros: c: O caracter a ser gravado no arquivo. arquivo: A varivel que recebeu o valor de retorno da funo fopen, correspondente ao arquivo que ser escrito. Valor de retorno: Retorna o prprio caracter, se ele foi escrito com sucesso, ou EOF, em caso de erro.

Você também pode gostar