Introdução à linguagem C - Parte I

Este artigo é o primeiro sobre introdução à linguagem C de uma série de três. Aqui serão abordados a estrutura de um programa, alguns comandos básicos, declaração de variáveis e operadores matemáticos, relacionais e lógicos.

[ Hits: 74.144 ]

Por: Leonardo Barrozo dos Santos em 10/03/2003


Variáveis



Uma variável é um espaço de memória reservado para armazenar um certo tipo de dado e tendo um nome para referenciar o seu conteúdo. As variáveis globais não podem ter o mesmo nome, apenas uma variável local pode ter o mesmo nome de uma variável local de outra função.

Tabela contendo os tipos e tamanhos de variáveis válidas em c:


Tabela contendo códigos de formatação para printf e scanf:
Tipo Extensão do bit Escala
char 8 -128 a 127
int 16 -32768 a 32767
unsigned int 16 0 a 65535
signed int 16 -32768 a 32767
long int 32 -2147483648 a 147483648
float 32 3.4E-38 a 3.4E+38
double 64 1.7E-308 a 1.7E+308


Declarando variáveis

Tipo_variável nome_variável;

Exemplo:
int numero;
unsigned int maior;
char letra;
char nome[80];

Variáveis Locais

São declaradas dentro da função, sempre no início. Exemplo:
int aluno (int j)
{
   int k; -> Variável local
   k = 20;
   return k + j;
}

Variáveis Globais

São fora de qualquer função, usualmente no início do programa, Ela pode ser usada em qualquer parte do programa. Exemplo:
{ exemplo4.c }
#include<stdio.h>
float f; // Variável global
void global ()
{
   f = 10;
}
int main (void)
{
   scanf(%f,&f);
   printf(F = %f,f);
   global();
   printf(F = %f,f);
}
Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Comandos básicos
   3. Variáveis
   4. Operadores
Outros artigos deste autor

Utilizando a biblioteca NCURSES - Parte II

Utilizando a biblioteca NCURSES - Parte III

Utilizando a biblioteca NCURSES - Parte I

Introdução à linguagem C - Parte II

Leitura recomendada

Introdução as Bibliotecas do C/C++

Inteiros e Strings na linguagem C

Criando uma calculadora com o KDevelop

Liberando Memória ajustando o Tamanho das Strings em C

Mais sobre recursividade em C/C++

  
Comentários
[1] Comentário enviado por marcolinux em 11/03/2003 - 09:13h

CADE O RESTO !!!

[2] Comentário enviado por zelinka em 11/03/2003 - 20:56h

tem muito pouco....

[3] Comentário enviado por Caesar em 21/04/2003 - 17:49h

Xiiiii ! O conteúdo é muito fraco...

[4] Comentário enviado por erico em 28/07/2003 - 14:46h

muito simplificado ...

[5] Comentário enviado por Shadow em 16/01/2004 - 22:26h

Séra q eu consigo aprender algu com esse artigo...

[6] Comentário enviado por streetlinux em 12/05/2004 - 20:33h

Falta boa parte do assunto!

[7] Comentário enviado por cherokee em 19/05/2004 - 22:21h

Vc só tratou o basico do basico!!! Tá bom, mas...

[8] Comentário enviado por leonardoamorim em 08/09/2004 - 20:43h

Boa Intenção, mas isso já existi na internet com o Tutorial da UFMG e Unicamp.

[9] Comentário enviado por dudu_away em 15/09/2004 - 02:14h

Valeu o esforço...

[10] Comentário enviado por Bach em 06/10/2004 - 02:05h

Os comentários não deviria ser assim /*Comentário*/
Num é C++ não que é assim? :|
Mesmo assim valews

[11] Comentário enviado por spikey em 10/02/2005 - 14:07h

Boa tarde comunidade, sou iniciante na linguagem C e C++ no Linux, utilizo o Red Hat 9.0, gostaria de saber como posso fazer para compilar e executar corretamente meus programas no Linux, o Red Hat já vem com o GCC instalado, mais até agora nada consegui.

[12] Comentário enviado por Bach em 13/02/2005 - 16:49h

Bom é o seguinte:
Para compilar direto e linkar tudo é soh digitar o seguinte no seu console

$ gcc fonte.c -o fonte

sendo assim ele vai compilar o seu código fonte contido no arquivo "fonte.c" e o nome do executável sairá com o nome fonte (O linux não precisa de extensão para reconhecer o arquivo), depois para executálo é o seguinte...

$ ./fonte

valews e espero ter ajudado

[13] Comentário enviado por goiabis em 12/07/2006 - 20:30h

axu ki está faltando conteudo

[14] Comentário enviado por math em 30/08/2006 - 18:46h

Só isto?

[15] Comentário enviado por Rafael-rs em 24/01/2007 - 17:47h

pocuco material mas o que vale eh a intensaum.

[16] Comentário enviado por dill_tche em 30/08/2007 - 15:03h

valeu bach, ta procurando isso que vc colocou...

[17] Comentário enviado por lazaro91 em 29/10/2007 - 08:07h

Sem graça vcs que ficam criticando o cara. Ninguém que falou mal do cara fez alguma coisa semelhante.
lbsantos continue assim não deixe os caras te intimidarem

[18] Comentário enviado por willians dutra em 02/11/2007 - 09:35h

quando vem a parte II ?

[19] Comentário enviado por crow em 28/03/2008 - 20:33h

Hola...
basico basico ahahah . Mais bom melhor comesar em algum lugar..
Bom o C99 tem algumas modificaçoes ..
Por exemplo:
//para comentarios
e init main(void)
Boa iniciativa colega para quem quiser um complement de informaçoes
Wikibooks Linguagem C
http://pt.wikibooks.org/wiki/Programar_em_C/%C3%8Dndice
O C e muito dom para que quer fasser um kernel o minux ,linux ,unix sao escritos em C . Ele e muito leve as cabeceiras os headers default como stdio.h contem so alguma funçoes basicas.
Entao nao sao sobrecaregados com linguagems de um nivel mais alto como Qt.
Me fassem rir quando tem um noob que quer aprender programar e ele pergunta
Qual e a melhor linguagem para começar o C ou C++???
Sempre tem aquele estupido que vai responder C++
Todas as linguagens C++ ou python e varias outra sao amelioraçoes do C .
O se foi feito para programar o kernel unix.
Se ele nao e mais versatil que o C++ e justamente para continuar levinho.
O C e a linguagem por exelencia.
Depois e so fazer uma lib legal se voce quiser colocar mais funçoens.
Como a glibc da GNU.
Entao o que devemos aprender??
- linguagem C para fazer um Kernel ou um compilador.
- Assembly un dos unicos geitos de fazer um master boot record ou um compilador entre outros.
BLZ valeu galera

E viva o GNU/Linux


[20] Comentário enviado por crow em 28/03/2008 - 20:44h

//E so modificar o main para entrar argumentos
//E modificar o codigo para escrever o codigo cryptado em um file
//Para cryptar um passe
//=======================>File name: cryptPass.c
#include <stdio.h>
#include <time.h>
#include <unistd.h>
#include <crypt.h>

int
main(void){

unsigned long seed[2];
// Generate a (not very) random seed.
// You should do it better than this...


char salt[] = "$1$........";

const char *const seedchars =
"./0123456789ABCDEFGHIJKLMNOPQRST"
"UVWXYZabcdefghijklmnopqrstuvwxyz";

char *password;
int i;

// Generate a (not very) random seed.
// You should do it better than this...

seed[0] = time(NULL);
seed[1] = getpid() ^ (seed[0] >> 14 & 0x30000);

// Turn it into printable characters from `seedchars'.
for (i = 0; i < 8; i++)
salt[3+i] = seedchars[(seed[i/5] >> (i%5)*6) & 0x3f];

// Read in the user's password and encrypt it.
password = crypt(getpass("Password:"), salt);

// Print the results.
puts(password);
return 0;
}

-------------------------------------------------------------------------
//Esse e para verificar se o passe que voce digitou e igual au
//pase cryptado

//=========================================================================================
//==========> The next program shows how to verify a password.
//===============> It prompts the user for a password and prints “Access granted.”
//===============>File name : vrPass.c
//=========================================================================================

#include <stdio.h>
#include <string.h>
#include <unistd.h>
#include <crypt.h>

int
main(void){

const char *const pass = "$1$/iSaq7rB$EoUw5jJPPvAPECNaaWzMK/";

char *result;
int ok;

// Read in the user's password and encrypt it,
// passing the expected password in as the salt.
result = crypt(getpass("Password:"), pass);

// Test the result.
ok = strcmp (result, pass) == 0;

puts(ok ? "Bem vindo Colega." : "Vai te foder aqui tu nao entra.");
return ok ? 0 : 1;
}

[21] Comentário enviado por tecnicoveron em 13/05/2008 - 10:00h

Onde posso encontrar um compilador para usar no Kurumin e apostilas que possa reforçar nos estudos da Linguagem C?

Obrigado

[22] Comentário enviado por feo.1982 em 18/09/2009 - 13:00h

Meu Brother a iniciativa foi maravilhosa,mas o conteúdo faz até quem conhece C se perder!

[23] Comentário enviado por removido em 04/11/2013 - 17:24h

Será que alguém poderia me indicar alguma obra ou site que tenha a documentação das bibliotecas c no linux?
Agradecido! :D

[24] Comentário enviado por bach em 04/11/2013 - 18:41h

Que eu conheço é Professional Linux Programming e em portugues que eu ja li

Programação Orientada a Objeto com C++
Autor: Bueno, André Duarte
Editora: Novatec


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts

Formatos Variáveis referenciadas
%d ou %i inteiro com sinal
%u unsigned int
%e ponto flutuante
%s string
%x hexadecimal
%o octal
%ld long int
%f float
%g parte flutuante exponencial
%c caracter