Ir ao conteúdo
  • Cadastre-se

atlos

Membro Pleno
  • Posts

    267
  • Cadastrado em

  • Última visita

Tudo que atlos postou

  1. se tiver no windows pode usar del system("del diretorio\\*vdb"); ou pode usar a função "FindFirstFile" da Windows pra procurar os arquivos de um determinado tipo em um determinado diretório(diretorio\\*vdb) e ir usando "remove" com o nome do arquivo que a função retornar no membro "cfilename" na estrutura WIN32_FIND_DATA espero que tenha sido isso que perguntou aqui tem uma explicação melhor http://msdn.microsoft.com/en-us/library/windows/desktop/aa364418%28v=vs.85%29.aspx
  2. int main() { char input[3]; std::cout << "Digite Q para sair, digite H para bater papo com o sistema, diferencia maiusculas e minisculas!" << std::endl; while(true) { std::cin >> input; if(std::strcmp(input,"hl") == 0) { papo(); } else if(std::strcmp(input,"q") == 0) { break; } } return 0; }
  3. pra armazenar mais de um caractere voce usa um array ou um ponteiro char palavra[2];std::cin>>palavra; std::strcmp(palavra,"hl"); //compara pra ver se é igual o retorno da função strcmp geralmente é 0 quando é igual
  4. pode dar uma olhada no fórum..tem milhares de tópicos sobre manipulação de arquivos
  5. tem engines ja prontas e de graça(sem acesso à alguns recursos),sendo assim voce só precisa saber usar a engine e a linguagem de script que ela usa para programar o jogo em si,esse seria o jeito fácil..
  6. eu fiz uns testes aqui(isso realmente me encucou o.o),vi que com fgets da pra fazer uma gambiarrazinha(se tiver algum jeito mais fácil avisem por favor),por exemplo se for digitado um numero de ponto flutuante ele trunca e ficaria na stream ainda o ponto e o valor depois do ponto,então voce pode fazer alguma coisa desse tipo char cp[2]; int n = 0;printf("Digite um numero");scanf("%d",&n);fgets(cp,2,stdin); //le o resto que ficou na stream de stdin depois do inteiro e poe em cp if(cp[0] == '.' ) //testa se foi colocado um ponto em cp,se foi então r será 1{ //se entrar aqui então é porque o numero é um pf e retorna o loop} pra quando for digitado um caractere em vez de um numero pode ver esse exemplo aqui http://forum.clubedohardware.com.br/forums/topic/1068322-problemas-com-a-valida%C3%A7%C3%A3o-da-vari%C3%A1vel-em-c/ deve ter jeito mais fácil pra fazer isso,mas esse é o que eu sei agora
  7. mas C++ ja tem classes pra esse tipo de coisa..mesmo assim obrigado por compartilhar
  8. hum..sei bulhufas sobre a biblioteca de C,mas se voce ta pegando a entrada com um int e é digitado um ponto flutuante, dependendo do tipo de arredondamento que o compilador faz(no VS ele trunca),isso era pra deixar a stream com o valor depois do ponto ainda,sabendo disso em teoria era só testar se a stream ainda ta cheia..
  9. oi,se nao tem a minima ideia de como começar a fazer isso em C++,voce deve estudar containers associativos ou containers hash associativos aqui tem um tutorial,porém os containers hash ai mostrados nao são standard http://easycplusplus.com/stl/stltutorial3a.html
  10. oi,aqui no fórum o que nao falta é programa de cadastro,se ainda nao começou a fazer,pode ver alguns aqui no fórum como exemplo,se tem alguma duvida específica seria bom colocar exatamente o que é
  11. PS:Só pra me corrigir quando eu disse isso,eu quis dizer que nao tem como fazer isso usando uma representação como tem pra HEX(0x00000000) mesmo assim voce pode ter esse mesmo efeito pra binarios(onde binarios são realmente os bits)do numero usando uma estrutura com campos de bit e evitando o preenchimento do compilador #pragma pack(1)struct numerobin{unsigned short bit0 : 1unsigned short bit1 : 1unsigned short bit2 : 1//etc..};#pragma pack() é melhor nao confiar muito no que eu digo de noite(e de manhã tambem)
  12. "<< "(shift)desloca para a esquerda a quantidade de vezes passada no operando e " >>" desloca para a direita a quantidade de vezes passada no operando,é isso.. só pra fica claro,o bit 1 é na posição 1(2º bit)certo?se quer saber se o bit 1 ou o 4 estão setados(= 1) voce pode testar usando um deslocamento "<<" do valor 1 = 0000 0001 por exemplo,testar o bit 4 do valor 0111 0111 seria unsigned short num4 = 119; //0111 0111n2 = (1 << 4) //desloca os bits de 1,4 posições para a esquerda n2 atualmente tem 0001 0000resultado = n2 & num4; //faz AND com o valor 0111 0111 //n2= 0001 0000 //resultado = 0001 0000 = 16 Pra testar só o bit 1,deslocaria 1 vez,pra testar os bits 5 e 6 juntos,voce pode fazer um AND com o numero 96 = 0110 0000 unsigned short num4 = 119; //0111 0111n2 = num4 & 96; //0110 0000 ou então deslocar o numero 3 até o bit 5 e fazer um AND unsigned short num2 = 3; //0000 0011n2 = num2 << 5; //n2 teria agora 0110 0000 resultado = n2 & num4; //resultado teria o valor 96 = 0110 0000
  13. nao precisa ta em binario(até porque nao tem como ter uma representação binaria(pelo que eu sei)em C++),geralmente os valores na API são mapeados bit a bit,talvez por isso eles sejam mostrados mais em forma binaria(isso é só um palpite..)é bom usar as constantes definidas pra evitar erros mesmo que voce saiba o valor dela,e pra melhor legibilidade por exemplo em C++ pra voce saber quais os bits na posição x até y,voce teria que saber a representação do numero em decimal tambem ou em HEX const unsigned short binarin = 68; //0100 0100//se quiser mapear os bits 0 e 1 do valor em "binarin" pra ver se tem algum bit setado,eu poderia //fazer um AND com o numero 3(0011)unsigned short num2 = 3; //0000 0011unsigned short n2 = (binarin & num2); //n2 teria o valor 0 porque //0000 0011 //0100 0100 //AND=0000 0000 //agora se eu quisesse mapear os bits 1 e 2 de binarin n2 = (num2 << 1); //Desloca os bits de num2 uma posição,atualmente n2 teria 0000 0110 n2 = n2 & binarin; //agora n2 teria o valor 4 porque //0000 0110 //binarin = 0100 0100 //AND = 0000 0100 = dois 1 na mesma posição é 1 C++ tambem tem a classe bitset que lida com esse tipo de coisa espero que tenha sido que perguntou..
  14. voce pode posicionar o ponteiro do arquivo no final do arquivo fseek(arquivo,0,SEEK_END); depois pega a posição atual do ponteiro no arquivo(contada em bytes) int tamanhoarq = ftell(arquivo) depois divide pela quantidade de bytes que voce usa pra inserir cada cliente int quantidadecliente = tamanhoarq/sizeof(estruturas)
  15. quando voce ainda ta no programa ou quando ja esta no arquivo e voce abre ele na proxima vez que entrar no programa?
  16. atlos

    Delphi para c++

    na verdade mesmo em C++ dependendo do compilador(GCC)ele nao vai checar os limites do array,se voce realmente quer evitar esse erro,usar o VS seria melhor..
  17. atlos

    Delphi para c++

    ta bom..realmente algumas coisas(a maioria)voce só aprende quando vai praticando..é que algumas coisas são implementadas dependentes do compilador e outras são normas da linguagem,então ficaria mais fácil pra voce diferenciar o que pode dar errado e o que nao pode As funções em C++ geralmente tem essa assinatura tipo nomefuncao (parametros) tambem tem outras coisas como especificadores de linguagem e algumas palavras chaves pra caracterizar a função depende do seu sim,outros aplicativos quer dizer outros processos?(se for,nao,mas isso depende da arquitetura do processador e do modo que voce ta executando o programa,isso nao tem a ver com a linguagem nao..) basicamente com o tipo e estar entre os limites do array(mas isso depende x) ) se o tamanho da pilha do programa puder suportar o tamanho do novo bloco nao tem problema,em C++ voce perde os dados quando voce libera a memória,voce teria que deixar o dados em algum lugar,alocar memória novamente pro tamanho que voce quer e passar esses dados de volta pro novo array dinamico com o tamanho atual,isso é o que chamam de resize
  18. sinceramente nao entendi muito o problema com o que voce ta tentando fazer.. porém quanto a sua pergunta pra avançar ou retroceder a posição do cursor usa a própria função 02h,incrementa ou decrementa o registro DL(posição da coluna)(ps:nao sei se ja ta setado em outra parte do programa,mas geralmente voce tambem que passar o valor da pagina de video no reg BH)e pra pegar o valor do caractere na posição atual usa a função 08h(código ascii retorna em al) pra fazer a comparação é um algoritmo como qualquer outro,procura pela ultima letra de cada palavra "n*tamanhodaletra" compara com o caractere que voce ta procurando,se der jogo,diminui o valor no reg DL pra alcançar o 2º caractere da palavra,compara com a letra que deveria se o 2º caractere que voce quer,se der jogo,decrementa DL e compara com o 3º caractere da sua string..
  19. atlos

    Delphi para c++

    quase tudo que voce perguntou depende,o que seria bom voce ler é o que é standard e o que nao é na linguagem,alguns termos padrões usados,e provavelmente essas perguntas que voce fez seriam respondidas aqui tem ja com a padronização c++11 http://en.wikipedia.org/wiki/C%2B%2B11 essa pagina do velho tambem é muito boa,explica todas as novas caracteristicas e diferenças do c++11 para o 98 http://www.stroustrup.com/C++11FAQ.html apesar de ser só um rascunho ainda sim pode ajudar http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3242.pdf geralmente barra invertida '\' espera um próximo caractere pra fazer o seu efeito,nesse caso teria que ser "\\" claro que isso tudo seria bom depois que voce tiver lido um bom livro introdutório sobre a linguagem
  20. nao com certeza,o que eu queria dizer foi o que o LNW disse,porém se um dia voce vier para o VS,um simples #pragma comment(linker,"/STACK:tamanhodapilha") no topo do arquivo resolveria
  21. ve como seleciona um novo tamanho default pra pilha do programa pro compilador que voce ta usando
  22. que bom,mas se voce fosse usar esse array pra outras coisas isso provavelmente gerararia alguns erros,e dependendo do compilador,contar até o ultimo elemento do array nao quebraria a pilha(eu nao sei como é com o DEV)
  23. oi,não sei como fazer isso no DEV,mas provavelmente o tamanho da pilha que ele reserva pro programa nao ta sendo grande o suficiente pra fazer toda essa recursão
  24. oi,pode dizer se foi voce que fez esse algoritmo ou se veio junto com a questão?

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!