
Mnemonic
Membros-
Total de itens
170 -
Registro em
-
Última visita
Tudo que Mnemonic postou
-
Eu também já ouvi umas pessoas falando isso. E considerando que o Dev parou de ser desenvolvido há uns anos atrás, eu não acho ele a melhor escolha pro vista.
-
É só clicar em Project -> Project Options. Na primeira aba (General) tem lá a opção de colocar um icone.
-
(Resolvido) Exibição de valores com printf
pergunta respondeu ao Rogério Shoiti de Mnemonic em C, C++
É que dependendo da arquitetura, existe uma coisa meio esotérica, que é o seguinte... seguindo a lógica do bit que indica o sinal de positivo e negativo, você teria então +0 e -0: 100000000000000 000000000000000 Então, se eu não me engano esse valor negativo é usado como um valor a mais, já que não faz sentido ter zero positivo e negativo. (Espero que eu não esteja falando nenhuma besteira, faz muito tempo que vi isso). Edit: Agora que eu vi, no exemplo de cima [1] seguido de 15 zeros eu errei o valor. -
(Resolvido) Exibição de valores com printf
pergunta respondeu ao Rogério Shoiti de Mnemonic em C, C++
Antes de mais nada queria só te alertar pro fato de que essa função não tá correta. No início tem "void main" e no final um "return 0". Apesar dela compilar normalmente na maioria dos compiladores, o correto seria usar "int main" e "return 0". Se no livro está exatamente assim, eu te aconselho a buscar um segundo livro pra servir de base, na boa. O que o livro tentou dizer aqui é o seguinte, uma variável do tipo INT teria 16 bits, 16 bits equivalem a 16 combinações de 0 e 1, então você poderia ter um valor mínimo de 00000000000000 (que equivale a 0 mesmo) e 1111111111111111 (que equivale a 65535 em binário). Só que como você tem valores negativos e positivos, então essa quantidade de valores cai pra menos da metade num int normal (sem ser "unsigned"), porque o primeiro BIT é responsável pra dizer se o número é positivo ou negativo. Ou seja: [0] 111111111111111 > os 15 um's que sobraram tem um valor máximo de 32767 [1] 111111111111111 > -32678 Pegando o valor 42000 e transformando pra binario: 1010010000010000 -> 42000 1111111111111111 -> 65535 -1010010000010000 -> 42000 ------------------------ = 0101101111101111 -> 23535 , (valor unsigned, -1 porque o compilador conta o zero) Ok, isso tudo é o que deveria acontecer normalmente, mas o que acontece é que os compiladores mais atuais não usam mais 16 bits pra um inteiro, e sim 32 bits (dependendo do compilador), então esses valores do livro se tornaram obsoletos (o que é muito fácil, pois a gente sabe que os computadores evoluem muito rápido). 32 bits: 4294967295 -> 11111111111111111111111111111111 Pra pegar todos esses valores, você pode usar a calculadora do windows que faz conversão de bin pra dec. Então, como eu disse antes, não existe um padrão pra quantidade de bits usados nas variáveis. Pelos resultados que você teve aí, acredito que o seu compilador usa esses valores: short int - 16 bits int - 32 bits long int - 64 bits Mas isso não é um padrão. Cada compilador implementa isso de um jeito, e pode ser que daqui a um ano quando você baixar outra versão do compilador, esses valores sejam diferentes. No gcc eu acredito que haja algum controle do próprio compilador pra impedir que os valores extrapolem (o que é uma coisa boa). -
Na teoria, você coloca a imagem do icone num arquivo de resources (.RES) e linka esse arquivo junto com o executável... Na prática a tua IDE (devc++, visualstudio, etc) já faz isso por você, então depende da ide que estiver usando (se estiver usando uma).
-
As estaticas são unidas ao programa em tempo de compilação, as dinamicas em tempo de execução. Geralmente o resultado final é o mesmo... No caso das DLLs, tem a questão que elas só são chamadas quando o programa principal estiver fazendo alguma chamada a ela. Se isso não ocorre, ela não consome nenhum recurso do sistema. Enquanto que do outro jeito elas são executadas junto com o programa (pois são compilados juntos). Achei esse site que explica legal: http://augustocampos.net/revista-do-linux/...ibliotecas.html
-
Desculpa, não posso ajudar pois não uso o devc++. E pela mensagem que mostrou, suspeito que deva ser alguma coisa do próprio compilador, e não do código. Talvez o DevC++ não funcione bem no vista, mas não tenho certeza.
-
Tudo que você precisa basicamente é um compilador. Mas um editor legal também ajuda muito. Você pode escolher baixar apenas o compilador e depois um editor e fazer tudo manualmente, ou você pode baixar um IDE, que é um programa que integra os dois em um só. Um bom IDE que recomendo é o Code::Blocks: http://www.codeblocks.org/downloads/5 Mas você pode procurar também pelo Dev-C++ ou pelo VisualStudio Express no google.
-
Ops, eu não pensei nisso, desculpa. Pra resolver é só usar a função abs. abs(nmes - mes); Talvez seja preciso incluir o <cmath>, dependendo do compilador, e talvez seja preciso fazer um cast pra float: abs((float)(nmes - mes));
-
Bem, no ubuntu, quando a partição do windows por exemplo é montada automaticamente pelo sistema, ela fica em /media/disk então basta abrir o terminal e: cd /media/disk ls
-
Os compiladores sempre lêem as expressões da direita pra esquerda, então: Correto: x = y / 2; Errado: y / 2 = x;
-
int dia, ndia, mes, nmes, ano, nano; cout << "Data do Aniversario" << endl; cout << "Dia: "; cin >> dia; cout << "Mes: "; cin >> mes; cout << "Ano: "; cin >> ano; cout << "Data atual" << endl; cout << "Dia: "; cin >> ndia; cout << "Mes: "; cin >> nmes; cout << "Ano: "; cin >> nano; cout << "Idade: "; cout << nano - ano << " anos, " << nmes - mes << " mes(es), e " << ndia - dia << "dias";
-
Você complicou muito o código. No começo criou duas variáveis com o mesmo nome (media). Em vez de usar os goto, prefira usar um simples "do { ... } while(n1 > 10)", fica bem mais simples de entender o codigo. Acho que a questão toda se resume ao calculo da media, certo? Você pega do usuário a primeira nota, X. A segunda nota seria Y. (X + Y) / 2 >= 6 x/2 + y/2 = 6 y/2 = 6 - x/2 y = 12 - x Como você tem do usuário o valor de X, basta subtrair de 12 e você terá a nota que precisa pra saber se precisa fazer a outra prova ou não. printf("\nEntre com o valor da primeira nota:\t"); scanf("%f", &n1); if (n1 > 1) { n2 = 12 - n1; printf("\nO aluno precisa tirar %f pra passar por media", n2); } Bem, foi isso que eu entendi pela questão que você mandou. Desculpa aí se não é isso.
-
Você quer apenas acessar as partições pelo prompt? Ou tá perguntando como montar as partições pra que possa acessar elas?
-
Qual sua dúvida mesmo?...
-
No caso 2 você não abriu o buffer do arquivo. fopen
-
int main() { A função main é do tipo int, mas no final ela não tá retornando nenhum valor int. (ex: "return 0") int a[12] = {}, b[12] = {}; Não entendi o porquê das chaves.
-
Não precisa mostrar o código nem o erro que o compilador retorna, cara. A gente vai adivinhar... é só ter calma e esperar um pouco. =)
-
a função converterbinario precisa de um tipo. void, int, etc...
-
cout << “var1+7 é “; cout << var1 <<"+7 é"; O operador << nesse caso serve pra mandar os dados pro buffer do cout. No primeiro exemplo, você tá mandando uma string, porque estão entre aspas, "var1+7" No segundo exemplo, você tá mandando a variavel var1, depois uma string.
-
Esses tipos (UpdateMirrors, RedirAddrs, NotifierServer) não parecem ser do winsock2. Se você procurar as definições desses tipos talvez descubra como são decriptados.
-
#include <stdio.h> #include <stdlib.h> int main() { float nota1, nota2, total; printf("Digite a nota da 1 prova: "); scanf("%f", ¬a1); printf("Digite a nota da 2 prova: "); scanf("%f", ¬a2); total = (nota1 + nota2) / 2; system("cls"); if (nota1 >= 7) { printf("Aprovado em prova 1\n"); scanf("%*c"); } else if(nota1 > 4) { if (total >= 5) { printf("Aprovado"); scanf("%*c"); } else { printf("Reprovado"); scanf("%*c"); } } return 0; }
-
#include <stdio.h> #define pe 30.48 #define pol 0.3937 int main () { float metro, polegadas, pes; printf ("Digite o valor em metros:\n"); scanf ("%f", &metro); pes = (metro * 100) / pe; polegadas = (metro * 100) * pol; printf( "Valor correspondente em pes: %f\n", pes ); printf("e em polegadas: %f\n", polegadas); return 0; } Eu fui no google, procurei "1 centimeter in inch" (um centimetro em polegada) daí deu aquele valor lá em cima 0.3937. Então eu só multipliquei os centimetros por ele.
-
Talvez isso ajude: http://msdn.microsoft.com/en-us/library/ms724432(VS.85).aspx Função GetUserName()