Ir ao conteúdo
  • Cadastre-se

CiroboyBR

Membro Pleno
  • Posts

    1.045
  • Cadastrado em

  • Última visita

Tudo que CiroboyBR postou

  1. Uma vez eu isolei usando aquelas sacolas que tem o plástico grosso. Pode usar algum plástico resistente que não fure com as pontas dos componentes. Pra ajudar, podes cortar as pontas que ficaram muito grandes, pois essas são as que podem romper o plástico e fechar um curto entre o componente e o gabinete.
  2. Não sei dizer qual a melhor, mas posso indicar a WxWidgets, o problema é que ela também tem C++, interface gráfica em C puro, acho que só a API Win32 e o GTK. É possível, mas depende de você. Caso escolha a WxWidgets, usando ela com o codeblocks, você vai ter uma ferramenta de construção de interfaces que vai acelerar e facilitar sua vida. Use estes vídeos para acelerar seu aprendizado: https://www.youtube.com/playlist?list=PLedPNvbgm76-unH66UYIQ81hE-GxkdIl8 No contexto da WxWidgets, não sei se entendi sua pergunta, mas olhe o ultimo vídeo da playlist que você vai saber como é construir programas com interface gráfica utilizando essa Lib.
  3. Minha experiência com essa fonte XFX XT 600w está sendo muito boa, comprei o PC já usado, com + ou - 1 ano. somando tudo estou ela deve ter uns 2 anos e meio de uso. Não apresentou problema com meu setup (i3 6400 + gtx960 4GB) + 4 HDs + Drive de DVD + caixa de som ou Headphone, Acho que uma de 450w supria a necessidade, mas a de 600w deve dar uma folga boa pra Upgrades. O que me impressionou foi que uma vez, ao realizar uma limpeza completa no PC, eu liguei o conector de 4 pinos na placa-mãe, só que de maneira errada. Me surpreendi por 2 coisas, primeiro porque encaixou sem grandes dificuldades, segundo porque a placa-mãe não ligou, o que me levou a deduzir que a fonte ou a placa tem um sistema anti-curto. Recomendo essa XFX XT 600w pela minha experiência pessoal.
  4. Qual compilador vocês estão utilizando? Salvaram o arquivo como .c ou .cpp? Já tentei de diversas formas usando o gcc e esse [^caractere] não funciona para delimitar a leitura.
  5. Nesse caso você precisa ler s string toda e formatar a string (Quebra-la em partes, dividir e extrair as informações para outras inteiros etc). Rode o código abaixo na mesma pasta do arquivo TXT #include <stdio.h> #include <stdlib.h> #include <string.h> int main(){ FILE *f1 = fopen("pessoa.txt", "r"); char str[500]; if(f1 == NULL){ perror("Nao Foi Possivel Ler"); exit(0); } fgets(str, 500, f1); for (int i = 0; str[i] != 0; i++ ) { if(str[i] == ',') { printf("\nAchei um dado: "); } else { printf("%c", str[i]); } } fclose(f1); return 0; }
  6. beleza. vamos por partes agora. É obrigatório você salvar o arquivo separando os dados com vírgula? fprintf(f1, "%s,%d,%f\n", p.nome, p.idade, p.dinheiro); Nesse caso você tem dados separados por vírgula, o fscanf lê dados intervalados por espaço.
  7. Não acredite, tire a prova. Mostre o código. Como o companheiro relatou acima, tem como usar a formatação para ler o '\n', usando "%[^\n]" ao invés de "%s". Foi o que eu disse, pra usar o fgets para ler "as strings".
  8. use o fgets para ler as strings, o fscanf() não lê os espaços.
  9. Sinceramente, essa VGA aí é atraso. melhor pegar algo no mínimo uma GT 710, vai rodar CSGO no MIN, mas pode ser que trave em alguns mapas. Recomendo da GT 750 pra cima, vai ter uma jogatina mais suave.
  10. Você plugou o cabo do monitor na placa de vídeo? Tente usar a resolução 800x600 ou até a 640x480 com tudo no baixo/médio
  11. Basta você desenhar uma imagem com as posições definidas por variáveis, feito isso, você adiciona um incremento/decremento na variável. EX teórico: Desenha(Projetil, Posicao_x, Posicao_y); Posicao_x ++; Isso dentro do loop principal do jogo vai desenhar sempre 1 pixel a frente, gerando o efeito de movimentação.
  12. No meu trabalho tinha um PC assim. Apesar de nunca ter descoberto o real problema, a desconfiança estava no(a): - Fonte - RAM -placa-mãe (vídeo) Os problemas foram surgindo cada vez mais e acabou que o PC não durava nem 1 min ligado. Era um Dual core slot 775
  13. A grosso modo, upgrade fácil e sem complicações consiste em: - Aumento de memória RAM - Troca do HD por um SSD - Troca ou adição de placas Mini PCI-e (Wifi, bluetooth etc).
  14. Verifique o nome da função, pode haver um erro de digitação.
  15. Você está dando include 2x. deixe os includes em apenas 1 dos arquivos #include<stdio.h> #include<stdlib.h> #include<conio.h> #include<windows.h> #include<iostream> #include<string.h> #include<C:\Program Files (x86)\Dev-Cpp\include\mysql\mysql.h>
  16. #include <stdio.h> #include <stdlib.h> struct agenda_telefonica { char nome [10]; char email[40]; char tel[10]; int codigo; }; void incluir_contato(struct agenda_telefonica contato[], int pos); void consultar_contato(struct agenda_telefonica contato[], int cod); void alterar_contato(struct agenda_telefonica contato[], int cod); void listar_contato(struct agenda_telefonica contato[],int pos); int main() { struct agenda_telefonica contato[100]; int loop=1; int usuario; int pos =0; int cod; int r; do { printf("==============================\n"); printf(" AGENDA TELEFONICA\n"); printf("==============================\n"); printf("\n"); printf(" [1] = Incluir um contato \n"); printf(" [2] = Alterar um contato \n"); printf(" [3] = Consultar um contato \n"); printf(" [4] = Excluir um contato \n"); printf(" [5] = Listar um contato \n"); printf(" [6] = Gerar o arquivo \n"); printf(" [7] = Para sair do programa \n"); scanf("%i",&usuario); system("cls"); switch(usuario) { case 1: incluir_contato(contato, pos); r = pos; pos++; loop=1; system("pause"); system("cls"); break; case 2: alterar_contato(contato,cod); loop=1; system("pause"); system("cls"); break; case 3: consultar_contato(contato, cod); loop=1; system("pause"); system("cls"); break; case 4: break; case 5: listar_contato(contato,pos); loop=1; system("pause"); system("cls"); break; case 6: break; case 7: loop=0; break; } } while(loop); return 0; } void incluir_contato(struct agenda_telefonica contato[], int pos) { printf("Informe o codigo:\n"); fflush(stdin); scanf("%d",&contato[pos].codigo); printf("\n Informe o nome \n\n "); fflush(stdin); scanf("%s",&contato[pos].nome); printf("\n Informe o telefone \n\n "); fflush(stdin); scanf("%s",&contato[pos].tel); printf("\n Informe o email \n\n "); fflush(stdin); scanf("%s",&contato[pos].email); } void consultar_contato(struct agenda_telefonica contato[], int cod) { printf("Informe o codigo:\n"); scanf("%d",&cod); for(int i; i<100; i++) { if(cod==contato[i].codigo) { printf("Codigo : %d\n",contato[i].codigo); printf("Nome : %s\n",contato[i].nome); printf("Telefone : %s\n",contato[i].tel); printf("E-mail : %s\n",contato[i].email); } } } void alterar_contato(struct agenda_telefonica contato[], int cod) { printf("Informe o codigo:\n"); scanf("%d",&cod); for(int i; i<100; i++) { if(cod==contato[i].codigo) { printf("\n Informe o novo nome \n\n "); fflush(stdin); scanf("%s",&contato[i].nome); printf("\n Informe o novo telefone \n\n "); fflush(stdin); scanf("%s",&contato[i].tel); printf("\n Informe o novo email \n\n "); fflush(stdin); scanf("%s",&contato[i].email); } } } void listar_contato(struct agenda_telefonica contato[],int pos) { for(int i = 0; i<pos; i++) { printf("Codigo : %d\n",contato[i].codigo); printf("Nome : %s\n",contato[i].nome); printf("Telefone : %s\n",contato[i].tel); printf("E-mail : %s\n",contato[i].email); printf("===============\n"); } }
  17. 1 - Você tem que montar a string da query com o SPRINTF, depois de montada, você utiliza a string no mysql_query(); 2 - Armazene tudo que for inserir/consultar/deletar no banco de dados em variáveis do tipo string. #include <stdio.h> #include <stdlib.h> #include <mysql.h> #include <locale.h> #include <stdlib.h> int main() { MYSQL conexao; MYSQL_RES *result; MYSQL_ROW row; int i, num_fields; char rg[40] = "04512"; char query[150]; mysql_init(&conexao); if ( mysql_real_connect(&conexao, "127.0.0.1", "root", "", "teatro", 0, NULL, 0) ) { sprintf(query, "select * from tb_aluno where rg = '%s'", rg); if (mysql_query(&conexao, query) != 0 ) { printf("\nFalha de cconsulta"); } else if (result == NULL) { printf("\nResultado vazio"); } result = mysql_use_result(&conexao); num_fields = mysql_num_fields(result); while ((row = mysql_fetch_row(result))) { for( i = 0; i < num_fields; i++) { printf("%s ", row[i] ? row[i] : "NULL"); } } } mysql_close(&conexao); return(0); }
  18. Desliga o DHCP da LAN do segundo roteador que ele funcionará redirecionando todos os clientes para o DHCP do primeiro roteador, inclusive os clientes WIFI. Um Switch da vida. Detalhe: Nesse modo você deve conectar o cabo na porta LAN de ambos os roteadores, a porta WAN do segundo roteador vai ser ignorada.
  19. Pode ser que o problema tenha surgido após o teste. Um cabo mal crimpado pode dar defeito no primeiro estirão.
  20. @howjoejr1 Só pra esclarecer! 1 - Se você usar um cabo curto, já testado, a conexão funciona? 2 - Se você usar o cabo longo, com outro dispositivo sem ser seu roteador, a conexão funciona? 3 - Conectando o roteador ao modem, com o cabo grande, você verificou se o roteador pegou IP e consegue pingar do roteador para o modem? 4 - Conectando um computador ou notebook diretamente no modem, com o cabo grande, você verificou se o computador pegou IP e conseguiu pingar do para o modem?
  21. Poderia postar seu código completo? Bem como o código SQL utilizado para criar a tabela no banco de dados? Tente armazenar o RG em uma string.
  22. Vale a pena dar uma consultada na documentação da API: https://dev.mysql.com/doc/refman/5.6/en/c-api-function-overview.html Dá uma olhada nesse código: https://github.com/CiroboyBR/syscad
  23. Tem um problema aí, CPF não é pra ser inteiro. Só se usa INT em variável que vai ser introduzida em um calculo matemático. CPF, RG e números de documentos se utiliza string pra armazenar. Sobre o stringstream, Você pode ignorar este passo e apenas percorrer a "string em si", sempre verificando se tem caracteres inválidos.

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...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!