Вы находитесь на странице: 1из 2

GUIA DE SINTAXE PARA PROGRAMAO C++

1. Criao, Compilao e Execuo de um projeto em C++


No DEV C++ (no Windows)
i)
Arquivo->Novo->Projeto->Console Application
ii) Executar->Compilar
iii) Executar->Executar
iv) F9 (Compilar e executar)
Compilador GCC (no Linux)
i)
Criar um arquivo usando kwrite
ii) Para compilar o arquivo no konsole:
g++ c nomeDoArquivo.cpp
iii) Para construir o projeto no konsole:
g++ o nomeExecutavel nomeDoArquivo.o
iv) Para executar no konsole:
./nomeExecutavel
2. Comentrios
/* este um comentrio de mltiplas linhas */
// este um comentrio de nica linha
3. Estrutura do programa principal e funes
//Diretivas do pr-processador
#include<nomeDoArquivo> //Inclui arquivo de biblioteca
#includenomeDoArquivo //Inclui arquivo do usurio
#define NOME texto

//Substitui texto

//Prottipos das funes


tipoDeRetorno nomeDaFuncao(tipoDeParam1 nomeVar1,
tipoDeParam2 nomeVar2, ...);
//Declarao de variveis globais
tipoDaVarivel nomeDaVarivel;
//Funo Principal
int main( int argc, char *argv[ ] ){
// Declarao das variveis locais
// Instrues
return 0;
}
//Definies das funes conforme prottipo
tipoDeRetorno nomeDaFuncao(tipoDeParam1 nomeVar1,
tipoDeParam2 nomeVar2, ...)
{

5. Declarao de Variveis
char nomeDaVarivel;
short nomeDaVarivel;
int nomeDaVarivel;
long nomeDaVarivel;
float nomeDaVarivel;
double nomeDaVarivel;
long double nomeDaVarivel;
tipo nomeDaVarivel, nomeDaVarive2, ...;
6. Constantes Literais
nmero
nmerol
nmero.nmero
nmerof
nmerod
0xhex
0Xhex
0octal
+nmero
-nmero
nmeroenmero
nmeroEnmero
caractere
caracteres

\0
\a
\b
\t
\n
\r
\N
\xN
\
\
\\
7. Arrays (Vetores e Matrizes)

Tipo int
Tipo long
Tipo double
Tipo float
Tipo double
Inteiro hexadecimal
Inteiro hexadecimal
Octal
Nmero Positivo
Nmero Negativo
Notao Cientfica
Notao Cientfica
Caractere nico
String (Conjunto de caracteres)
String vazia
Caractere nulo
Alerta (Beep)
Backspace
Tabulao
Nova Linha
Retorno do carro
Constante octal (onde N a constante)
Constante hexadecimal (onde N a constante)
Aspas duplas
Aspa nica
Barra invertida

/* Declarando, alocando e acessando


vetores e matrizes estticas */
tipo nomeDoVetorEst[ n ];
nomeDoVetorEst [ i ]

// Declarao das variveis locais


// Instrues

tipo nomeDaMatrizEst[ n ][ m ];
nomeDaMatrizEst [ i ][ j ]

//Retorno (quando houver)


return valor;

8.Estruturas
// Definio da estrutura
struct NomeDaEstrutura{

}
4. Erros Comuns de Compilao e de Execuo

Esquecer o ponto-e-vrgula nas sentenas

Referencia a nomes de variveis diferentes das declaraes feitas

Ponto-e-vrgula na definio de uma funo

Confuso na atribuio com o operador de teste de igualdade

Operaes matemticas com tipos de dados diferentes

Laos infinitos

Erro de ndice em matrizes

Prof. MSc Edgar Modesto Amazonas Filho 2009


edgar@prof.iesam-pa.edu.br

Caracteres (8bits)
Inteiro (16 bits)
Inteiro (word, 16, 32, ...)
Inteiro (32 bits)
Ponto-Flutuante (32 bits)
Ponto-Flutuante (64 bits)
Ponto-Flutuante (96 bits)
Mltiplas Variveis

9. Atribuies de varivies
varivel = valor
varivel++
++varivel
varivel---varivel
varivel += valor
varivel -= valor
varivel *= valor
varivel /= valor
varivel %= valor
varivel &= valor
varivel |= valor
varivel ^= valor
varivel <<= valor
varivel >>= valor

Atribuio
Incremento ps-fixado
Incremento pr-fixado
Decremento ps-fixado
Decremento pr-fixado
Adiciona e atribui
Subtrai e atribui
Multiplica e atribui
Divide e atribui
Modula e atribui
AND e atribui
OR e atribui
XOR e atribui
Deslocamento de bits esquerda e atribui
Deslocamento de bits direita e atribui

10. Operadores
arg + arg
arg arg
arg * arg
arg / arg
arg % arg
arg < arg
arg > arg
arg <= arg
arg >= arg
arg == arg
arg != arg
arg && arg
arg || arg
! arg
(tipo)algumaCoisa
cond ? OpcV : OpcF
varEstrutura.membro

Adio
Subtrao
Multiplicao
Diviso
Mdulo
Menor que
Maior que
Menor ou igual a
Maior ou igual a
Igual
Diferente
AND Lgico
OR Lgico
NOT Lgico
Casting
Operador ternrio (if)
Acesso a membro de estrutura

11. Estruturas de Controle (Repeties e condicionais)


if ( condio ){
instrues;
}
if ( condio ){
instruesVerdade;
}
else{
instruesFalsa;
}

Condicional Dupla

switch ( condioInteiraOuCaractere ) {
case valorInteiroOuCaractere :
instrues;
break;

tipoDoMembro1 nomeDoMembro1;
tipoDoMembro2 nomeDoMembro2;

case valorInteiroOuCaractere :
instrues;
break;
Condicional Mltipla
...
default :
instruesOpcionaisPadro;

tipoDoMembroN nomeDoMembroN;
};
/* Declarao de variveis estruturas e ponteiros para
Estruturas */
struct NomeDaEstrutura nomeDaVarivel;
// Acessando membros da estrutura
nomeDaVarivel.nomeDoMembro

Condicional Simples

GUIA DE SINTAXE PARA PROGRAMAO C++


for ( inicializador ; condioDeContinuidade ; passo ){
instrues;
Lao de repetio (for)
}
while ( condioDeParada ) {
instrues;
Lao de repetio (pr-condio)
}

13 Entrada e Sada padro (Teclado/Monitor)

15. Funes para manipulao de constantes e variveis literais

Entrada de nico dado:


cin >> nomeDaVarivel;

Exemplo
string str, str1, str2;
str = str1 + str2;

Entrada de mltiplos dados:


cin >> nomeDaVarivel >> nomeDaVarivel2 >> nomeDaVariveN;

do{
instrues;
} while ( condioDeParada );

Lao de repetio (ps-condio)

Sada de nica mensagem:


cout << Minha mensagem ;

12. Funes
Definio das Funes

Sada de mensagens e dados:


cout << Minha mensagem << nomeDaVarivel1;

//Recebendo valor
tipoDeRetorno nomeDaFuno(tipoDeParmetro nomeDoParmetro)
{

Obs:
A sada cout << pode estar acompanhada de << endl para gerar uma nova linha no
monitor. Tal como um ENTER
A sada cout << pode conter uma combinao de vrias mensagens e variveis sendo
exibidas no monitor.
As mensagens sempre devem estar entre aspas duplas.

instrues;
}
//Recebendo vetores e matrizes
tipoDeRetorno nomeDaFuno(tipoDoVetor nomeDoParmetro[ ]) {
//Recebendo atravs de vetor dimensionado ou no
instrues;
}

14 Funes matemticas

tipoDeRetorno nomeDaFuno(tipoDaMatriz nomeDoParm[ ][ m ])


{
//Recebendo atravs de matriz dimensionada, em que m o
//nmero de colunas
instrues;
}

asin( arg )

Obs.: Um tipoDeRetorno pode ser um tipo primitivo, uma estrutura, ou void. Caso haja
retorno a funo dever usar o comando return. As funes podem possuir vrios
parmetros, mas apenas um tipoDeRetorno.
Chamadas s funes
//Chamada por valor (com retorno)
nomeDaVarivel = nomeDaFuno( nomeDoArgumento );
//Chamada por valor (sem retorno)
nomeDaFuno(nomeDoArgumento );
//Chamada por referncia (sem retorno)
nomeDaFuno( nomeDoArgumento );
//Chamada por referncia com vetor ou matriz (com retorno)
nomeDaVarivel = nomeDaFuno( nomeDoVetorOuMatriz );
//Chamada por referncia com vetor ou matriz (sem retorno)
nomeDaFuno( nomeDoVetorOuMatriz );
//Chamada sem argumentos(com retorno)
nomeDaVarivel = nomeDaFuno( void );
//Chamada sem argumentos(sem retorno)
nomeDaFuno( void );

Nome
acos( arg )

atan( arg )

ceil( num )

cos( arg )
cosh( arg )
exp( arg )
fabs( num )
floor( num )

fmod( x, y )
log( num )
pow( base, exp )
sin( arg )
sinh( arg )
sqrt( num )
tan( arg )
tanh( arg )

Prof. MSc Edgar Modesto Amazonas Filho 2009


edgar@prof.iesam-pa.edu.br

Referncias:
SILVERMAN, J.H. C Reference Card (ANSI), 1999. Disponvel em:
www.cs.dal.ca/studentservices/refcards
SCHILDT, H. C Completo e Total. 3 Ed, Makron Books, 1997.
ORTEGA, E.; WADA, D. K. Erros mais freqentes na Programao em C. Disponvel
em: http://www.unicamp.br/fea/ortega/info/curso/erros.htm
Things should be made as simple as possible, but not any simpler
Albert Einstein

Obs:

Obs.: nomeDoArgumento pode ser quaisquer variveis de tipos primitivos, estruturas.

Resultado
A funo acos() devolve o arco co-seno de arg. O
argumento de acos() deve estar na faixa de -1 a 1; caso
contrrio, ocorrer um erro de domnio .
A funo asin() devolve o arco seno de arg. O argumento
de asin() deve estar na faixa de -1 a 1; caso contrrio,
ocorrer um erro de domnio .
A funo atan() devolve o arco tangente de arg. O
argumento de atan() deve estar na faixa de -1 a 1; caso
contrrio, ocorrer um erro de domnio .
A funo ceil() devolve o menor inteiro que no seja
menor que num. Por exemplo, dado 1.02 ceil() devolver
2.0. Dado -1.02, ceil() devolver -1.0.
A funo cos() devolve o co-seno de arg. O valor de arg
deve estar em radianos.
A funo cosh() devolve o co-seno hiperblico de arg.
A funo exp() devolve o logaritmo natural e elevado
potncia arg.
A funo fabs() devolve o valor absoluto de num.
A funo floor() devolve o maior inteiro que no seja
maior que num. Por exemplo, dado 1.02 ceil() devolver
1.0. Dado -1.02, ceil() devolver -2.0.
A funo fmod() devolve o resto de x/y.
A funo log() devolve o logaritmo natural de num.
A funo pow() devolve base elevada potncia exp.
A funo sin() devolve o seno de arg. O valor de arg deve
estar em radianos
A funo sinh() devolve o seno hiperblico de arg.
A funo sqrt() devolve a raiz quadrada de num
A funo tan() devolve a tangente de arg
A funo tanh() devolve a tangente hiperblica de arg

str1 == str2
str1 != str2
str1 > str2
str1 >= str2
str1 < str2
str1 <= str2
str.length()

Resultado
Declarao de variveis literais.
Concatena str1 e str2 e atribui a str.
Comparao de literais:
Igualdade
Diferena
Maior que
Maior ou igual a
Menor que
Menor ou igual a
Devolve o comprimento da literal

Para usar as funes matemticas deve-se adicionar #include<cmath>


As funes podem estar situadas em uma expresso matemtica ou podem
devolver o resultado para uma varivel. Por exemplo, a = cos( arg )
Os argumentos das funes podem ser constantes, variveis numricas e/ou
expresses aritmticas

Вам также может понравиться