Controle variável para C Programming
Na programação C, você pode mexer com a variável no seu código, alterando-o em outro tipo, dando-lhe um novo nome completamente, ou lançar um feitiço sobre a variável para atender às suas necessidades, sem fins lucrativos ou não.
Como criar coisas novas com typedef
Quando é uma variável flutuante não uma bóia? Quando é estereotipado em um int, é claro. Este truque é possível em C usando a typecast. Por exemplo:
(Int)dívida
Na linha anterior, a variável flutuador dívida é estereotipado como um valor int. O int entre parênteses direciona o compilador para tratar o valor de dívida como um número inteiro.
Por que alguém iria querer fazer isso?
Porque às vezes uma função requer um tipo variável específica e que tipo não está disponível. Ao invés de converter e manipular vários tipos de variáveis ​​em um programa, você pode simplesmente estereotipado uma variável para o tipo que você deseja. Não é um truque comum, mas é muitas vezes necessário, como mostra a isso não está certo.
#include int main () {int a, b-float c-printf ( "Digite o primeiro valor:") -scanf ( "% d", a) -printf ( "Input o segundo valor:") -scanf ( " % d ", b) -C = a / b-printf ("% d /% d =% .2f n ", a, b, c) -Retornar (0) -}
Exercício 1: Digite o código fonte a partir Isso não está certo em seu editor. Construir e executar.
Aqui está um exemplo de execução com a entrada em negrito:
Introduza o primeiro valor: 3Introduza o segundo valor: 23/2 = 1,00
Obviamente, é errado que 3 # 247- 2, de alguma forma trabalhar fora para 1,50. Se o computador diz que é 1,00, o computador deve estar correto.
Ou talvez o computador é apenas confuso porque na linha 12 do código-fonte, dois valores int são divididos, eo resultado é atribuído a uma bóia. Isso não funciona muito bem, no entanto, porque dividir um número inteiro por um número inteiro em C resulta em um inteiro como o resultado.
O valor 1 é o valor inteiro mais próximo de 1,50. Assim, mesmo que o computador estiver errado, ele está fazendo exatamente o que foi dito para fazer.
Exercício 2: Modificar seu código-fonte, mudando Linha 12 para ler
c = (float) a / (float) b-
Salvar a alteração. Criar e executar usando os mesmos valores apenas como mostrado. Aqui está o novo output:
Introduza o primeiro valor: 3Input o segundo valor: 23/2 = 1,50
Melhor. Isso é porque você estereotipado variáveis uma e b na equação, permitindo temporariamente o compilador para tratá-los como números de ponto flutuante. Portanto, o resultado é o que deveria ser.
Você pode entrar em um monte de problemas com a palavra-chave typedef. Ele pode lançar palavras e operadores C normal de seus eus consistentes em todos os tipos de travessuras.
Os perigos da typedef
#include typedef int fedido-fedido main () {a = 2-printf fedido ( "Todo mundo sabe que") -printf ( "% d +% d =% d n", a, a, a + a) -Retornar (0) -}
Em Os perigos da typedef, a instrução typedef na linha 3 define a palavra fedido de ser a mesma que a palavra-chave int. Em qualquer lugar você pode usar int no código, você pode usar a palavra fedido em vez disso, como mostrado nas linhas 5 e 7.
Exercício 3: Use o código-fonte dos perigos do typedef para criar um novo programa, o que demonstra que um tipo variável fedido é o mesmo que um int. Construir e executar.
Concedido, o exemplo em Os Perigos de typedef é bastante parva nenhuma programador sério iria criar um programa real assim. Onde typedef é usado na maioria das vezes é na definição de estruturas. A declaração typedef ajuda a reduzir o chunkiness dessa atividade.
Criando uma estrutura da maneira tradicional mostra como nested operação estrutura funciona, dado um conhecimento das estruturas:
Criação de uma estrutura da maneira tradicional
id struct {char primeira [20] -char última [20] -} - data struct {int mês ano-int dia-int -} - struct humana {struct aniversário ID nome data-estrutura -} -
utilização typedef para definir uma estrutura mostra como as declarações ocorrer se você fosse typedef as estruturas:
USANDO typedef Para definir uma estrutura
typedef struct {char id primeira [20] -char última [20] -} personal-typedef data struct {int mês-int dia-int ano-} humana {aniversário pessoal name-calendário -} calendário-estrutura -
Nesta listagem, o ID de estrutura é typedef para o nome pessoal. Isso não é uma variável nome- é um typedef. É o mesmo que dizer, # 147 Todas as referências a ID de struct são agora o mesmo que o nome pessoal # 148.;
Da mesma forma, a data estrutura é typedef ao calendário. Finalmente, na declaração da estrutura humana, os nomes typedef são usados ​​em vez das definições de estruturas mais complexas.
A estrutura aninhada
#include #include int main () {data struct {int mês ano-int dia-int -} - {char nome humana struct [45] -struct aniversário data -} - struct humana presidente strcpy (president.name, "George Washington ") - president.birthday.month = 2-president.birthday.day = 22-president.birthday.year = 1732-printf ("% s nasceu em %d/%d/%dn",president.name,president.birthday.month,president.birthday.day,president.birthday.year)-return(0)-}
exercício 4: Substitua o nome membro na estrutura humana em uma estrutura aninhada com uma estrutura aninhada. Nome que id estrutura e tê-lo contém dois membros, matrizes de caracteres, primeiro e último, para o armazenamento de nomes e sobrenomes de um indivíduo.
Se você fizer tudo corretamente, a referência ao nome do presidente será as variáveis president.name.first e president.name.last. Certifique-se de atribuir valores a essas variáveis ​​em seu código e exibir os resultados.
exercício 5: Modificar o código fonte do projeto criado no Exercício 4 para usar typedef, como mostrado na Usando typedef para definir uma estrutura. Construir e executar.
Pode-se argumentar que o uso de typedef não tornar o seu código mais claro do que se tivesse simplesmente usado bons nomes de variáveis ​​e um texto bem formatado. Por exemplo, você não pode usar typedef simplesmente porque você não quer ter que lembrar o que você definiu. Mas você vai encontrar outro código que usa typedef. Não deixe que ele te assustar.
A verdadeira vantagem de usar typedef com uma estrutura é, possivelmente, que ele evita que você digitar a palavra struct muitas vezes.
Noções básicas de variáveis ​​globais em programação C
Noções básicas de estrutura para programação C
Noções básicas de armazenamento de variáveis ​​para Programming C
Como alocar espaço para uma Estrutura em C Programming
Como criar um arquivo de cabeçalho personalizado em C
Como os projetos multi-módulo em C se tornam mais complexos, você encontra a primeira parte de cada arquivo de código fonte crescente mais e mais: Mais protótipos, mais constantes e variáveis ​​e estruturas mais globais são necessários…
Como criar uma lista ligada em C Programming
Na programação C, se você quiser adicionar uma segunda estrutura de código que você já criou, crie uma lista ligada - uma série de estruturas que contêm ponteiros para o outro. Juntamente com os dados de base de uma estrutura, a estrutura…
A grande maioria das funções da linguagem C retornar um valor- ou seja, elas geram alguma coisa. Seu código não podem utilizar os valores, mas eles são devolvidos de qualquer maneira.Uma função que retorna um valor ilustra uma função que é…
Uma matriz é um tipo de variável em programação C, que você pode examinar para o seu tamanho e endereço. Agora você descobrir o segredo profundo, escuro de contemplar o endereço de uma matriz.O código-fonte de onde a matriz Espreita mostra…
Na programação C, variáveis ​​utilizadas dentro de uma função são local para essa função: Seus valores são usados ​​e, em seguida, descartados quando a função é feito. Não me dê Não Estático demonstra o conceito.NÃO DÊ-ME…
Variáveis ​​variam, assim que o seu conteúdo pode ser alterado a qualquer momento no programa. Em sua jornada de programação C, as variáveis ​​são declaradas, e, em seguida, seus valores podem ser, assim, que seja. Não só isso- é…
Como trabalhar com o tempo de programação C
funções de tempo e assuntos afins na linguagem de programação C estão contidos no arquivo de cabeçalho time.h. Neste arquivo, você encontra as guloseimas descritos nesta lista:time_t: o time_t tipo de variável contém o valor da época Unix,…
Conceitos Estrutura estranhos em C Programming
Estruturas são talvez o tipo mais estranho de variável na linguagem de programação C. Os dois passos necessários para criá-los são incomuns, mas o método de ponto de referência a membro de uma estrutura parece sempre jogar fora…
Como construir um modelo de Estrutura em C ++
modelos de estrutura têm muitos usos interessantes, como a criação de um repositório de dados que não depende de um tipo particular. o StructureTemplate exemplo aqui mostra um tal uso.#incluir usando namespace std-templatestruct Volume {T…
Ponteiros para funções em C ++
Quando um aplicativo estiver em execução, as funções na aplicação existir na memória-assim como qualquer outra coisa na memória, eles têm um endereço. E ter um endereço é bom, porque dessa forma, as pessoas podem encontrá-lo.Você pode…