Struct – Estrututas – C++ e C#

Publicado: 14 de março de 2014 em C#, C/C++

Na Ciência da computação, uma estrutura de dados é um modo particular de armazenamento e organização de dados em um computador de modo que possam ser usados eficientemente.

Diferentes tipos de estrutura de dados são adequadas a diferentes tipos de aplicação e algumas são altamente especializadas, destinando-se a algumas tarefas específicas.

Struct

A palavra-chave estrutura define um tipo de estrutura e / ou de uma variável de um tipo de estrutura. Um tipo struct é um tipo de valor que normalmente é usado para encapsular pequenos grupos de variáveis ​​relacionadas, tais como as coordenadas de um retângulo ou as características de um item em um inventário.

É uma declaração que define uma lista de variáveis ​​a serem colocados sob o mesmo nome em um bloco de memória, permitindo que as diferentes variáveis ​​possam ser acessadas através de um único ponteiro.

O struct é uma palavra chave derivada da linguagem C, e não possui seu equivalente em Java, mas possui seu equivalente em ABAP e Python.

Abap : https://desenvolvimentoaberto.wordpress.com/2014/02/20/tipos-complexos-structures-abap/

Em Python um tuplas também pode armazenar diferentes tipos dentro de uma estrutura: https://desenvolvimentoaberto.wordpress.com/2014/02/22/tuples-tuplas-python-linux/

Exemplo:

Neste programa criamos uma estrutura de clientes.

C++

#include "stdafx.h"
#include <iostream>
#include <string>

using namespace std;

struct Cliente
{
	string nome;
	string logradouro;
	string endereco;
	int numero;
	string complemento;
	string bairro;
	string cidade;
	string contato;
	string cargo;
	int cep;
	long RG;
	long cpf;

};

int _tmain(int argc, _TCHAR* argv[])
{
	Cliente dados;

		dados.nome = "Instituto Brasileiro de Geografia e Estatística";
		dados.logradouro = "Avenida";
		dados.endereco = "Beira Mar";
		dados.numero = 436;
		dados.complemento = "13o Andar";
		dados.bairro = "Castelo";
		dados.cep = 20021060;
		dados.cidade = "Rio de Janeiro";
		dados.contato = "Mario de Oliveira Aguiar";
		dados.cargo = "Gerente";
		dados.RG = 999999999;
		dados.cpf = 99999999999;

		cout << "Empresa: " << dados.nome << endl;
		cout << dados.logradouro << " " << dados.endereco << " " <<
			dados.numero << " " << dados.complemento << endl;
		cout << "Cep: " << dados.cep << " " << dados.bairro << " " << dados.cidade << endl;
		cout << endl;
		cout << "Contato: " << dados.contato << " - " << dados.cargo << endl;
		cout << "Rg: " << dados.RG << " - Cpf: " << dados.cpf << endl;

		cout << endl;
		system("pause");

	return 0;
}

C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DesenvolvimentoAberto
{
    class Program
    {
         struct Cliente
        {
            public string nome;
            public string logradouro;
            public string endereco;
            public int numero;
            public string complemento;
            public string bairro;
            public string cidade;
            public string contato;
            public string cargo;
            public int cep;
            public long RG;
            public long cpf;
        }
        static void Main(string[] args)
        {
            Cliente dados = new Cliente();

            dados.nome = "Instituto Brasileiro de Geografia e Estatística";
            dados.logradouro = "Avenida";
            dados.endereco = "Beira Mar";
            dados.numero = 436;
            dados.complemento = "13o Andar";
            dados.bairro = "Castelo";
            dados.cep = 20021060;
            dados.cidade = "Rio de Janeiro";
            dados.contato = "Mario de Oliveira Aguiar";
            dados.cargo = "Gerente";
            dados.RG = 999999999;
            dados.cpf = 99999999999;

            Console.WriteLine( "Empresa: " + dados.nome);
            Console.WriteLine( dados.logradouro + " " + dados.endereco + " " +
                dados.numero + " " + dados.complemento);
            Console.WriteLine( "Cep: " + dados.cep + " " + dados.bairro + " " + dados.cidade );
            Console.WriteLine();
            Console.WriteLine( "Contato: " + dados.contato + " - " + dados.cargo);
            Console.WriteLine( "Rg: " + dados.RG + " - Cpf: " + dados.cpf );

            Console.WriteLine( );
            Console.ReadKey();
        }

    }
}
Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s