Ir ao conteúdo
  • Cadastre-se

Dúvidas linguagem C


Visitante

Posts recomendados

1 - Me tirem uma dúvida quem souber aí : Em um programa em C pode ser feita duas instruções na mesma linha?

Exemplo em uma linha :

printf ("Digite o primeiro valor: "); scanf ("%f", &x);

2 - Pessoal alguém conhece algum documento que mostra os erros de Dev C ++ ? Procurei em todo o programa e não achei. Seria muito útil para poder saber o erro e saber porque ele ocorreu.

3 - Alguém pode me tirar uma dúvida: toda vez que eu usar um comando de repetição em um programa em C eu tenho que usar o INT CONT? Vi vários programas que usam esses comandos e em todos eles tinha o cont!

4 - Pessoal estou começando a programar agora em C, estou tendo dor de cabeça na facul e aproveitando o fórum para sanr algumas dúvidas. Tenho uma dúvida sobre as variáveis.

Só para ver se entendi:

int - inteiro> vai ser sempre um nome ou número?

char - vai ser sempre um caractere?

float - nº em ponto flutuante, são os números com vírgulas?

5 - Queria saber se toda vez que eu fazer um programa em C eu tenho que colocar as diretivas/bibliotecas (#include<>) ?

Porque toda vez que vejo a truma entregar trabalhos eles não colocam, já começam direto no main()! Isso está correto? Se eu não colocar a biblioteca o exercício fica errado?

Link para o comentário
Compartilhar em outros sites

Olá, mi2011.

Não há problemas nisso. O que você deve ter em mente é que o ponto-e-vírgula indica o final de uma instrução. Ou seja, ao colocar duas instruções em uma única linha, não quer dizer que você tenha apenas uma instrução. O objetivo de se usar um comando por linha é tornar o código mais legível.

Link para o comentário
Compartilhar em outros sites

Provavelmente no exercício não vem nada pois eles devem considerar que já está descrito no programa

os #include são obrigatórios sim.. pois é a partir dele que ele reconhece os comandos (scanf, printf, if, else, etc..)... é a biblioteca da linguagem...

Por exemplo.. você pode ter um programa rodando perfeitamente na biblioteca stdio.h porém se tirar essa linha ou se mudar pra outra biblioteca tipo iosteam ... o programa deixará de funcionar.. pois alguns comandos não serão mais reconhecidos....

Uma dica é sempre tentar fazer o código organizado.. seguindo as linhas e o espaçamento para que futuramente fique mais fácil de dar uma manutenção ou até mesmo de achar comandos...

mas como nosso amigo ali em cima disse.. não tem problema não escrever comandos na mesma linha, desde que você separe por ;

_________

Inteiros são números .. sem casas decimais.

Se você declarar um inteiro por exemplo int a = 10,2 ele irá ser considerado somente a parte inteira... não será redondado o valor nem pra baixo nem pra cima, ou seja,

int a = 10,1 ( a = 10 )

int a = 10,9 ( a = 10 )

Char é somente um caractere sim..... cuidado que os caracteres podem ser números... porém não poderá ser feita nenhuma operação lógica com ele...

por exemplo

Char a = "1"

int b = 2

Não será possível fazer a + b.... pois a é um caractere... assim como qualquer letra, ponto, sinal etc...

Float são números com casas decimais sim...

é possível fazer operações entre float e int... porém o valor depende da variável em que será retornado o valor

Exemplo

int a = 1

float b = 1,1

printf ("%d", a+B) (resultado será 2)

printf ("%f", a+B) (resultado será 2,1)

O mesmo para atribuição em outras variáveis. ( utilizando as mesmas variáveis a cima)

int c = a + b ( c = 2)

float c = a + b ( c = 2,1) ..

Existem casos e casos para utlizar cada uma... então não se preocupe que com o tempo você pega tudo isso =)

_________

Na verdade esse COUNT é o nome da variável que eles definem para o contador...contar quantas vezes a sua repetição foi feita...

Existem muitos exemplos que tem essa variável que conta definida como a letra "i"

mas ai vai de pessoa por pessoa...

não necessáriamente você precisa definir ela com o nome COUNT.... pode definir como qualquer outra variável... com o nome que quiser...

________

Normalmente ele mostra na parte inferior o erro...

ele também mostra a linha em que o erro ocorreu... e a descrição ( em inglês acho )... faz um tempo que não utilizo o Dev.... mas tente clicar em cima do erro 2x e veja se ele não vai até a linha em que o erro ocorreu.

Link para o comentário
Compartilhar em outros sites

Os #includes na verdade não são obrigatórios,mas são nos arquivos incluidos que reside a assinatura de funções que foram implementadas em bibliotecas,outros arquivos (de implementação,e não definição) ou menos comumemente (e normalmente feio) no próprio arquivo.

Se em um programa eu quisesse escrever na tela por exemplo,eu poderia simplesmente fazer:


extern int puts(char * str);

int main()
{
char str[] = "IMPRIMIDO";
puts(str);
return 0;
}

E no meu compilador linkar contra a libc (é automaticamente feito).

Ou ainda,no Linux:


int main()
{
char str[] = "IMPRIMIDO\n";
asm("movl %0,%%ecx;" /*endereço da string*/
"movl $4,%%eax;" /*write syscall*/
"movl $1,%%ebx;" /*id da stdout*/
"movl $10,%%edx;" /*len da string*/
"int $0x80" /*interrupção do sistema*/
:
:"g"(&str)
:"memory"
);
return 0;
}

Que básicamente chama a syscall de escrita para a minha string.

Att. regreth

Link para o comentário
Compartilhar em outros sites

  • mês depois...

sobre o int, char e float.

Na realidade não existe muita diferença entre um int e um char, a diferença é que um tem o tamanho de 1 byte o outro de 2 ou 4 bytes(depende do computador). Quando você atribui:

char x='a';

Na realidade está puxando o valor numérico correpondente ao caractere "a" dentro da tabela ASCII e atribuindo para a variável. Portanto um calculo envolvendo x seria natural.

x=x+5;

nesse caso x será 'f'.

ou x=x-5;

x será um caractere estranho (tem que ver na tabela). Enfim, todo valor entre 0 e 256 tem um correspondente na tabela.

x++; x+=22; x+=y; etc. todos esses cálculos são válidos.

E é possível fazer calculo com variáveis de formatos diferentes se você usar o operador certo:

char x=5;

int y=7;

x+=(char)y;

Será criada uma cópia temporária do valor de y no formato char (1byte) que será somado a x e atribuido a ele próprio.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!