Você está na página 1de 18

C / C# / C++

Trabalho de Informática Industrial

Aluno: Igor Torres

SENAI
CFP – José Fagundes Netto
C
Breve História do C
• O desenvolvimento inicial de C, ocorreu no AT&T Bell Labs, entre
1969 e 1973. Deu-se o nome "C" à linguagem, porque muitas de
suas características derivaram da linguagem B.

• C foi originalmente desenvolvido, para a implementação do sistema


UNIX (originalmente escrito em PDP-7 Assembly, por Dennis
Ritchie e Ken Thompson). Em 1973, com a adição do tipo struct, C
tornou-se poderoso o bastante para a maioria das partes do Kernel
do UNIX, serem reescritas em C. Este foi um dos primeiros
sistemas que foram implementados em uma linguagem, que não o
Assembly, sendo exemplos anteriores, os sistemas: Multics (escrito
em PL/I) e TRIPOS (escrito em BCPL). Segundo Ritchie, o período
mais criativo ocorreu em 1972.
GERAL
• C tem como ponto forte, a sua eficiência, e é a linguagem de programação
preferida para o desenvolvimento de sistemas e softwares de base, apesar
de também ser usada para desenvolver programas de computador. É
também muito usada no ensino de ciência da computação, mesmo não
tendo sido projetada para estudantes e apresentando algumas dificuldades
no seu uso.

• C é uma linguagem imperativa e procedural, para implementação de


sistemas. Seus pontos de design foram para ele ser compilado, fornecendo
acesso de baixo nível à memória e baixos requerimentos do hardware.
Também foi desenvolvido para ser uma linguagem de alto nível, para maior
reaproveitamento do código. C foi útil para muitas aplicações que foram
codificadas originalmente em Assembly.

• Essa propriedade não foi acidental; a linguagem C foi criada com o objectivo
principal em mente: facilitar a criação de programas extensos com menos
erros, recorrendo ao paradigma da programação algorítmica ou
procedimental, mas sobrecarregando menos o autor do compilador, cujo
trabalho complica-se ao ter de realizar as características complexas da
linguagem. Para este fim, a linguagem C possui as seguintes características:
Exemplo de Código
#include <stdio.h>

struct pessoa
{
unsigned short int idade;
char nome[51]; /* vetor de 51 chars para o nome */
unsigned long int rg;
}; /* estrutura declarada */

int main(void)
{
struct pessoa exemplo = {16, "Fulano", 123456789}; /* declaração de uma variável tipo struct pessoa */

printf("Idade: %hu\n", exemplo.idade);


printf("Nome: %s\n", exemplo.nome);
printf("RG: %lu\n", exemplo.rg);

return 0;
}
Relações com C++

• A linguagem de programação C++ foi originalmente derivada do C


para suportar programação orientada a objetos. À medida que as
linguagens C e C++ foram evoluindo independentemente, a divisão
entre as duas veio a aumentar. O padrão C99 criou um número de
características que entram em conflito. Hoje, as principais
diferenças entre as duas linguagens são:

• inline - em C++, funções em linha encontram-se no espaço global


enquanto que em C encontram-se no espaço local. Por outras
palavras, isso significa que, em C++, qualquer definição de
qualquer função em linha (sem ser a respeito da sobrecarga de
funções de C++) tem de estar em conformidade com a "regra de
uma definição" da linguagem C++. Mas em C, a mesma função em
linha pode ser definida de maneira diferente em diferentes arquivos
(ou ficheiros).
Continuação...
• A palavra-chave bool, igual à usada em C++, em C99 necessita que
se inclua o ficheiro-cabeçalho <stdbool.h> (_Bool está sempre
disponível). Padrões anteriores de C não definiam um tipo booleano e
vários (e incompatíveis) métodos foram usados para simular um tipo
booleano.

• Algumas características originalmente desenvolvidas em C++ também


apareceram em C. Entre elas encontram-se:

• protótipos de função (com declaração de tipos de parâmetros) e


remoção do "int" implícito.

• comentários de linha, indicados por //; comentários de linha terminam


com um carácter de nova-linha

• a palavra-chave inline

• tipagem mais forte.


C++
Conceitos
• O C++ (em português lê-se "cê mais mais") é uma linguagem de
programação de alto nível com facilidades para o uso em baixo nível,
multiparadigma e de uso geral. Desde os anos 1990 é uma das linguagens
comerciais mais populares, sendo bastante usada também na academia
por seu grande desempenho e base de utilizadores

• Bjarne Stroustrup desenvolveu o C++ (originalmente com o nome C with


Classes, (que significa C com classes em português) em 1983 no Bell
Labs como um adicional à linguagem C. Novas características foram
adicionadas com o tempo, como funções virtuais, sobrecarga de
operadores, herança múltipla, gabaritos e tratamento de exceções. Após a
padronização ISO realizada em 1998 e a posterior revisão realizada em
2003, uma nova versão do padrão da linguagem está em
desenvolvimento. Conhecida informalmente como C++0x, seu lançamento
está previsto para 2009, tornando-se então o padrão C++09.
Características
• C++ é desenvolvido para ser uma linguagem tipada estaticamente e
de propósito geral que é tão eficiente e portátil quanto o C.

• C++ é desenvolvido para suportar múltiplos paradigmas.

• C++ é desenvolvido para fornecer ao programador escolhas,


mesmo que seja possível ao programador escolher a opção errada.

• C++ é desenvolvido para ser o mais compatível com C possível,


fornecendo transições simples para código C.

• C++ evita fornecer facilidades que são específicas a certas


plataformas ou a certos grupos de desenvolvedores.

• C++ não exige overhead para facilidades que não são utilizadas.

• C++ é desenvolvido para ser utilizado mesmo sem um ambiente de


desenvolvimento sofisticado
Tratamento de Objetos

• O C++ introduziu alguns conceitos da orientação a


objeto ao C, como exemplificado pelas classes, que
apresentam quatro características comumente
presentes em linguagens de programação orientadas a
objeto: abstração, encapsulamento, herança e
polimorfismo. Cada vez que uma classe é instanciada é
criado um objeto na memória, que é basicamente um
conjunto de atributos e operações reunidos.
C#
Sobre...
• C# (CSharp) é uma linguagem de programação
orientada a objetos desenvolvida pela Microsoft
como parte da plataforma .Net. A sua sintaxe
orientada a objectos foi baseada no C++ mas
inclui muitas influências de outras linguagens de
programação (Delphi e Java).
História
• Durante o desenvolvimento da plataforma .NET, as class libraries
foram escritas originalmente num compilador/linguagem chamada
Simple Managed C (SMC). Mas, em Janeiro de 1999, o Anders
Hejlsberg que fora escolhido pela Microsoft para desenvolver a
linguagem, forma uma equipe de desenvolvimento e dá inicio à
criação da linguagem chamada de Cool. Um pouco mais tarde, em
2000, o projeto .NET era apresentado ao público na Professional
Developers Conference (PDC), e a linguagem Cool fora renomeada e
apresentada como C#.

• A criação da linguagem, embora tenha sido feita por vários


programadores, é atribuída principalmente a Anders Hejlsberg, hoje
um Distinguished Engineer na Microsoft. Anders Hejlsberg fora o
arquiteto de alguns compiladores da Borland, entre suas criações
mais conhecidas estão o Turbo Pascal e o Delphi.
Características

• C# (CSharp) é uma linguagem de programação


orientada a objetos criada pela Microsoft, faz parte da
sua plataforma .Net. A empresa baseou C# na
linguagem C++ e Java, é considerada a linguagem
símbolo do .NET porque foi criada praticamente do zero
para funcionar na nova plataforma sem preocupações
de compatibilidade com código existente, o compilador
C# foi o primeiro a ser desenvolvido, a maior parte das
classes do .NET Framework foram desenvolvidas em
C#. C# é constituído por diversificadas características
Criação do nome
• Muitos pensam que o nome C# viria de uma sobreposição de 4
símbolos "+" dando a impressão de "++++". Na verdade o "#"
de C# refere-se ao sinal musical (sustenido), que aumenta em
1/2 tom uma nota musical. O símbolo real seria o ♯ e não o #,
porém, devido a limitação de telas, fontes e alguns browsers,
no momento da normalização junto a ECMA, fora especificado
apenas que o nome da linguagem seria uma letra C maiúscula
(U+0043) e o sinal "#" (U+0023), facilitando assim, publicações
e artigos com um caracter encontrado facilmente dos layouts
de teclado padrões. Desta forma, caso o nome fosse usado em
português, seria "C-Sustenido" (ou "Dó-Sustenido"), e não "C-
cerquilha".
Exemplo de Código

public class ClasseExemplo


{
public static void Main()
{
System.Console.WriteLine("Olá mundo!");
}
}
Finalização
• Todas as variações de C encontradas aqui nescessitam
de um compilador para as mesmas e temos como
exemplo temos alguns compiladores freeware’s:

DevC++
Visual C++
Visual C#