
Heldinho
Membros-
Total de itens
317 -
Registro em
-
Última visita
Tudo que Heldinho postou
-
Oi pessoal, td beleza? bom, eu estava usando o "explode"(strtok) pra dividir uma string com um "argumento separador".. mas, tipo, se eu quizer usar um argumento separador de mais de um caractere? olhem meu código: i=0; palavra = strtok(pasta, "|"); while (palavra!=NULL) { filec1 = palavra; i++; palavra = strtok(NULL, "|"); } tipo, lá aonde tem o "|", se eu quizesse usar "|U*QJZ~", teria como funcionar? =\ é qui eu to criando um esquema de compactação de arquivos, e muitos arquivos tem o |, e eu precisava de "um" caractere que só meu programa entendesse, pra poder dividir os arquivos compactados corretamente =\... quem puder ajudar eu agradeço ^^! =) O compactador está pronto(ainda não compacta, apenas "agrupa" mais de um arquivo em um só, aeuhauehauehauh), o descompactador que tá osso =D até +!!
-
Lemissel, você pode encomendar microcontroladores de graça em www.ti.com , são Free samples para "estudo".. só não peça D+, se não eles param de mandar.. cheguei a pedir sensor de temperatura e o microcontrolador, mas não sei mais o que fazer ocm eles!! uaheuaehuaehuaeh... até +!!
-
www.marmsx.cjb.net - Comece por lá, lá tem um bom curso de C.A unica diferença é que a página ensina a compilar no Hitech-C(Compilador para processadores Z80 do MSX), tirando isso e a biblioteca pra entrar no modo gráfico do msx, o resto é idêntico ao C de "pc"... Até +!!
-
Um "Print Screen" ou o Código fonte? Foi mal mas não éh open source não =D
-
Resovi o problema Créditos pra Aragorn13 =P =P
-
Gente, olhem esse meu código aki: #include <stdio.h> int main(int argc, char **argv){ if(argc != 3){ printf("Modo de uso: copiar [origem] [destino]"); } else{ FILE *arquivo; char conteudo[99999]; char origem[255]; char destino[255]; int i; int ii; sprintf(origem,"%s",argv[1]); sprintf(destino,"%s",argv[2]); printf("'%s'",origem); arquivo = fopen(origem,"r"); i=0; ii=0; for(i=0; !feof(arquivo); i++){ fscanf(arquivo,"%c",&conteudo[i]); ii++; } fclose(arquivo); i=0; arquivo = fopen(destino,"wt"); printf("%d",ii); while(i!=ii-1){ printf("%c",conteudo[i]); fprintf(arquivo,"%c",conteudo[i]); i++; } printf("\nCopiado Com Sucesso."); fclose(arquivo); } } Com arquivos de texto funciona belezinha.. mas o q fazer pra funcionar com binários, imagens e etc?? Grato.. Heldinho.
-
O problema do meu pc era a fonte queimada tudo resolvido.. tá aki o código do meu editor, mas nem imagino como ele colocou isso no código dele(aki isso funciona beleza, só não está 100% terminado xD), porém eu fiz ele pra escrever em modo gráfico, ai quando eu converti pra modo texto nem tirei o cursor.... #include <stdio.h> #include <stdlib.h> int contador; int menu; char frase[200]; int escrever(){ while(1){ system("cls"); printf("%s",frase); frase[contador] = getche(); frase[(contador + 1)] = '_'; if(frase[contador] != 8 && frase[contador] != 13 && frase[contador] != 27){ contador++; } if(frase[contador]==8){ frase[contador] = ' '; frase[contador - 1] = '_'; frase[contador + 1] = ' '; contador--; } if(frase[contador]==13){ frase[contador] = '\n'; contador++; } if(frase[contador]==27){ frase[(contador + 1)] = ' '; frase[(contador)] = ' '; return 0; } } return 0; } int main(void){ contador=0; while(1){ printf("1 - Editar o texto \n2 - Salvar \n3 - Sair do Editor"); menu=getche(); if(menu=='1'){ escrever(); } if(menu=='3'){ return 0; } } return 0; } Bom, o código tá ai, e eu vou sair daki,,(rimou, auhuahauh..) feliz ano novo xD Editado: Pra falar a verdade nem rimou...
-
Amigo, pra você ter idéia de que o C é capaz, estou fazendo um sistema operacional em C(C mesmo, não é nem C++).. claro que não é lá grandes coisas.. .mas tem uma area de trabalho com ícones =P.. bom, dá pra entrar em modo gráfico com C, alta resolução, dá pra tocar musicas wav, existem boas rotinas para controle do mouse e mais.. Me corrijam se falei besteira ... E feliz ano novo xD
-
Já tentou usar o System!? eu não sei te dizer qual seria a linha de comando pois nunca fiz isto antes.. a sua ai, é totalmente diferente da q eu faria.. provavelmente eu seilá mas está ai a dica do System("Comando que será executado");... você terá que usar sprintf para colocar o nome do arquivo na mesma string do comando que vai ser executado pelo console.. mas se sua aplicação for pra windows ou usar libgtk ai eu já não sei... até + nota: se falei besteira, desfalem ela por favor =) nota2: para não ficar dependente de outros programas, utilize a zlib para compactar.. pena que ainda não sei usar
-
só pra complementar o que iSoron já tinha complementado existem compiladores C/C++ até pra WellOx(Junção do sistema operacional Easy Dos 2 e Whbros), mas infelizmente o WellOx ainda está em construção EDITADO: Eu disse que existe um compilador pra WellOx, mas não é verdade eu disse errado =) na verdade existe uma header que faz com que o programa funcione no WellOx.. até +
-
cara, é fácil.. olha um exemplo simples: nota: axo q não ta funcionando, não da pra mim testar aki!! #include <stdio.h> #include <stdlib.h> int main(void){ FILE *arquivo; char *frase; char opcoes; sprintf(frase,"Olá!"); arquivo = fopen("temp.txt","wt"); while(1){ system("cls"); printf("Deseja salvar a frase no arquivo?"); scanf("%c",&opcoes[0]); if(opcoes[0] == 's' || opcoes[0] == 'S'){ fprintf(arquivo,"%s",frase); return 0; } else if(opcoes[0] == 'n' || opcoes[0] == 'N'){ printf("tchau!"); return 0; } } return 0; } ou: #include <stdio.h> #include <conio.h> int cls(void){ int x=0; gotoxy(1,1); while(x<100){ printf("\n"); /*//100 "enters"*/ } gotoxy(1,1); return 0; } int main(void){ FILE *arquivo; char frase[40]; char opcoes[0]; frase[0] = 'S'; frase[1] = 'o'; frase[2] = 'u'; frase[3] = ' '; frase[4] = 'l'; frase[5] = 'o'; frase[6] = 'c'; frase[7] = 'o'; frase[8] = ' '; frase[9] = 'd'; frase[10] = 'e'; frase[11] = ' '; frase[12] = 'e'; frase[13] = 's'; frase[14] = 'c'; frase[15] = 'r'; frase[16] = 'e'; frase[17] = 'v'; frase[18] = 'e'; frase[19] = 'r'; frase[20] = ' '; frase[21] = 'l'; frase[22] = 'e'; frase[23] = 't'; frase[24] = 'r'; frase[25] = 'a'; frase[26] = ' '; frase[27] = 'p'; frase[28] = 'o'; frase[29] = 'r'; frase[30] = ' '; frase[31] = 'l'; frase[32] = 'e'; frase[33] = 't'; frase[34] = 'r'; frase[35] = 'a'; frase[36] = '!'; arquivo = fopen("temp.txt","wt");/* //Abre o temp.txt para escrita // */ while(1){ cls(); printf("Deseja salvar a frase no arquivo?"); scanf("%c",&opcoes[0]); if(opcoes[0] == 's' || opcoes[0] == 'S'){ fprintf(arquivo,"%s",frase); return 0; } else if(opcoes[0] == 'n' || opcoes[0] == 'N'){ printf("tchau!"); return 0; } } return 0; } tb não sei se funciona =P EDITADO: re-li o codigo e não precisa do while na main!! até +!!
-
eu to sem tempo de ver esse codigo ai.. mas a outra parte, acho que é meu editor de textos.. aki ta sem erro, olhem o código(incompleto): Pootz, esqueci q to sem meu hd agora.. j´ajá eu edito o tópico :S não sei de que forma ele colocou o codigo no programa dele, até mais :S Editado: AAAAAAARRRRRRRGGGGHHHHHHH!!! MEU PC QUEIMOU!! AUEHUAEHUAEHUAEH... ppode achar engraçado, eu dexo... é a 2ªvez em 3 meses :S... O código vai ficar pra depois não é?!?.. até mais..
-
vixi.. não abre não não é?!? ... pois é.. meu host é gratuito.. rsrsrs.. você tem MSN!?eu posso te mandar por MSN ou email.. =) <? $MSN = "heldinho@escelsa.com.br"; echo "meu MSN é $MSN"; ?> ps: imitei o Douplus.. rsrsrs. =)
-
pois é.. estou criando um os sim.. e ai que está o maior dos bugs dele.... a memória! acho que tem a ver com a memória.. no windows, ele roda com uma velocidade belezinha.. no dos, quando eu clico no menu "iniciar"(whbros), ele demora uns 2 segundos pra abrir o menu.. V se pode.. não sei se tenho que carregar algum gerenciador de memória antes de entrar no OS, não sei se tenho que colocar funções relacionadas a memoria no meu OS.. seilá.. isso o "tempo vai concertar" !?!? =).. bom, agradeço mais uma vez vocês q tãum me ajudando muito =) PS: não posso deixar de postar isso: whbros.c(modo grafico do meu OS - v 0.0.8): Relatorio do arquivo: Numero total de funcoes: 351 Numero total de variaveis: 173 Numero total de linhas: 1003 Numero total de Headers: 6 Numero total de comentarios: 34 easy2.c (modo texto do meu os - versão 2.0.7): Relatorio do arquivo: Numero total de funcoes: 96 Numero total de variaveis: 145 Numero total de linhas: 407 Numero total de Headers: 3 Numero total de comentarios: 2 agora não pergunte se esses numeros estão certos =).. Editado: eu q postei junto com DOUPLUS!!
-
pootz, eu não entendi quase nada dessa parada da memória ai, mas cheguei a conclusão, que se o programa do cara tiver mais que 999999 caracteres, ele nunca saberá quantas funções, headers, variaveis.. rsrssrs =)
-
Ae gente, muito obrigado mesmo.. consegui fazer um programa que conta quantas variaveis, funções, linhas, comentários e headers ele tem =) olhem só o código fonte: #include <stdio.h> #include <conio.h> #include <funcoesh.h> void main(void) { int i = 0; FILE *arq; int total; int totalc; int pontoev; int variaveis; int comentarios; int jogodv; char conteudo[99999]; char arquivo[255]; printf("Digite o nome do arquivo:"); scanf("%s",arquivo); arq=fopen(arquivo,"r"); for (i = 0; !feof(arq); i++) { fscanf(arq,"%c",&conteudo[i]); } printf("\nCarregando o arquivo...\n"); delay(1000); /* só pra fazer uma horinha com o cara.. qual a graça sem isso!??!?! rsrsrsrsrs */ printf("%s",conteudo); totalc = i-1; printf("%d",totalc); i=0; jogodv=0; variaveis=0; comentarios=0; while(i<totalc){ if(conteudo[i] == ')' && conteudo[i+1] == ';'){ pontoev++; } if(conteudo[i] == ';' && conteudo[i-1] != ')' && conteudo[i-1] != '+' && conteudo[i-1] != '=' && conteudo[i-1] != '-'){ variaveis++; } if(conteudo[i] == 'i' && conteudo[i+1] == 'n' && conteudo[i+2] == 'c' && conteudo[i+3] == 'l' && conteudo[i+4] == 'u' && conteudo[i+5] == 'd' && conteudo[i+6] == 'e'){ jogodv++; } if(conteudo[i] == '*' && conteudo[i+1] == '/'){ comentarios++; } if(conteudo[i] == '/' && conteudo[i+1] == '/'){ comentarios++; } if(conteudo[i] == '\n'){ total++; } i++; } total = total+1; fclose(arq); limpa(12); /* Limpa a tela e põe a cor vermelha como fundo */ janela(5,5,70,20," Counter Plus - Created By Helder de Oliveira Gomes Filho."); /* Cria um quadrado nas seguintes cordenadas: x1=5 y1=5 até x2=70 e y2=20 com o titulo Created By... */ textbackground(BLUE); textcolor(YELLOW); gotoxy(6,7); cprintf("Relatorio do arquivo:"); gotoxy(6,8); cprintf("Numero total de funcoes: %d",pontoev); gotoxy(6,9); cprintf("Numero total de variaveis: %d",variaveis); gotoxy(6,10); cprintf("Numero total de linhas: %d",total); gotoxy(6,11); cprintf("Numero total de Headers: %d",jogodv); gotoxy(6,12); cprintf("Numero total de comentarios: %d",comentarios); gotoxy(6,18); cprintf("Creditos para DOUPLUS e ARAGORN13. =)"); gotoxy(5,20); textcolor(WHITE); pausa(""); limpa(0); /* limpa a tela com cor de fundo preto */ gotoxy(0,0); } Xii, e agora?? eu inclui a funcoesh.h e você não tem ela.. bom, funçõesh.h é uma header que eu criei a muito tempo atraz, e aproveitei pra usa-la neste programa para deixa-lo mais bonito.. você pode retirar as funções da funcoesh.h que estão no código fonte, ou pode colocar isso na sua pasta include: funcoesh.h: #include <stdlib.h> #include <conio.h> #include <string.h> /* Funcoesh.h - Um conjunto de funções para a linguagem de programação C desenvolvida por Helder de Oliveira Gomes Filho. Funcoes.h contém funcões relacionadas ao vídeo, como linhas(); que serve para escolher o numero de linhas na tela, cls(COR); que serve para limpar a tela e deixar o fundo colorido , também têm funções relacionadas à Janelas em 3D.Sem contar a barra de carregamento com porcentagem. © Web Hosting Brasileiro. ¯¯¯¯¯¯¯¯¯¯¯¯¯ ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ PS:As funções são todas em língua portuguesa, para facilitar aos programadores iniciantes em C. Editado ------- Este Atenção Abaixo, só vale se seu compilador for muuuuuito antigo!? ahh seila.. não dê mta bola pra esse atenção ai não. ATENÇÃO! Este Header só funcionará quando você incluir os seguintes arquivos ao seu programa: #include <stdio.h> #include <conio.h> e é obvio que também tem que incluir a header: #include <funcoesh.h> O arquivo funcoesh.h é freeware. Eu somente peço que coloque meu nome nos créditos de seu programa. */ void janela(int a, int b, int a1, int b1, char * titulo){ /* Função janela. modo de uso: janela(coluna em que a janela inicia, linha em que a janela inicia, coluna em que a janela acaba, linha em que a janela acaba, "Título da janela"); */ int x,y,x2,y2,z,zz,x3,y3,z3,x4,y4,z4,z5; x=a; y=b; x2=a1; y2=b1; z=x; zz=y; x3=x+1; y3=x2+1; z3=y2; x4=y+1; y4=y2+1; z4=x2; z5=z; while(x<x2){ while(y<y2){ gotoxy(x,y); textbackground(BLUE); cprintf(" "); y++; } y=b; x++; } textbackground(WHITE); while(z<x2){ gotoxy(z,zz); cprintf(" "); z++; } textbackground(BLACK); while(x3<y3){ gotoxy(x3,z3); cprintf(" "); x3++; } while(x4<y4){ gotoxy(z4,x4); cprintf(" "); x4++; } gotoxy(z5,zz); textbackground(WHITE); textcolor(BLACK); cprintf("%s",titulo); } void tlinhas(int d){ /* Função tlinhas - Tanto de Linhas na tela. O parâmetro a pode ser somente 25 ou 50. */ if(d==25){ system("MODE CON LINES=25"); } else if(d==50){ system("MODE CON LINES=50"); } } void limpa(int c){ /* Função limpa - limpa a tela e coloca o fundo de uma cor.modo de uso: limpa(numero da cor); */ int x=0; textbackground(c); while(x<100){ cprintf("\n"); x++; } } /* -- Tabela de cores Veja aqui abaixo o numero de cada cor para a função limpa: 0 - BLACK, -- dark colors -- 1 - BLUE, 2 - GREEN, 3 - CYAN, 4 - RED, 5 - MAGENTA, 6 - BROWN, 7 - LIGHTGRAY, 8 - DARKGRAY, -- light colors -- 9 - LIGHTBLUE, 10 - LIGHTGREEN, 11 - LIGHTCYAN, 12 - LIGHTRED, 13 - LIGHTMAGENTA, 14 - YELLOW, 15 - WHITE -- Fim da Tabela de Cores.OBS: nenhuma função precisa de comentários para funcionar. coloquei eles aqui só para ajudar a acostumar com as novas funções. */ void irpara(int a, int b){ /* Função irpara() - Sinônimo de gotoxy(). Do mesmo mode que gotoxy, o parâmetro a é a coluna em que o cursor vai ficar, e o parâmetro b é a linha que o cursor vai ficar. ex: irpara(15,5); Isto faz com que o cursor vá para a coluna 15 na linha 5. */ gotoxy(a,b); } void escrevec(char * frase){ /* escrevec(Escreve Colorido) - Função sinônima de cprintf(), porém não aceita mostrar variáveis.modo de uso: escrevec("Frase/texto/palavras.."); */ cprintf(frase); } void pausa(char * fpausar){ /* pausar() - Uma função bastante útil para interromper o programa e continuar a execução apos pressionar a tecla [ENTER].Observe que ela possui um parâmetro (fpausar), ele serve mara mostrar uma frase enquanto o programa está sendo pausado. ex: pausa("Aperte algo para voltar ao programa"); */ escrevec(fpausar); irpara(1,1); getche(); } int sair(char * titulo, char * texto, int cor){ /* sair() - É uma função para quem quer que o usuário fique mais no seu programa. quando ela é executada, aparece uma janela com um titulo , um pequeno texto e um botao sim e não. se a pessoa apertar sim, o programa para de ser executado, se a pessoa apertar não, o programa continua a ser executado(apenas o código seguite da funcao sair() ).Modo de uso: sair("Título do programa","pequeno texto",numero da cor de fundo do seu programa); .Exemplo: sair("EasyDosBR 2","Deseja mesmo sair?",4); . para entender melhor a função, olhe o exemplo chamado sair.cpp . */ char ch; limpa(cor); janela(10,5,30,10,titulo); irpara(15,9); textbackground(RED); textcolor(WHITE); escrevec("SIM"); irpara(10,6); textbackground(BLUE); textcolor(WHITE); escrevec(texto); irpara(15,9); textbackground(RED); textcolor(YELLOW); cprintf("S"); irpara(20,9); textcolor(WHITE); escrevec("NÇO"); irpara(20,9); textcolor(YELLOW); escrevec("N"); while(1){ irpara(15,9); ch=getche(); if(ch=='s'){ limpa(cor); exit(0); } else { limpa(cor); return 0; } } } /* Atenção! Esta é uma versão beta. Nem tudo que foi */ /* dito no começo do programa está aqui.Aguarde novas */ /* atualizações no portalc ou na whbr. */ /* © 2004 By Helder & WHBR Corp. - www.whbr.cjb.net */ /* Fim do arquivo funcoesh.h . eu espero ter ajudado */ /* com este arquivo, e espero também que você coloque */ /* meu nome nos créditos. */ Bom, imagino que o programa esteja cheio de bugs.. se alguém encontrar algum, me avise, ahh, obrigado mais uma vez a todos vocês qu eme ajudaram com o fscanf !!
-
Poderia fazer essa caridade !? eu nunca fiz isso antes =) ahh, obrigadão dinovuu!! =)
-
Cara, eu nunca poderia imaginar que uma simples leitura de char em char poderia resolver o meu problema.. vlw mesmo =).. outra coisa.. lá na variavel conteudo[9000];, tem como colocar um valor infinito de chars? eu já tentei conteudo[];, mas o compilador diz que não especifiquei um tamanho para a variavel, e o maior que consegui é 999999 . mas mesmo assim, obrigadão =)
-
Bom cara, talvez o fread funcione.. não tenho nem idéia de como usa-lo :S.. bom, o que eu quero fazer no meu programa, é um programa que conte quantas linhas(; e #) algum código fonte tenha.. não me digam como fazer, por favor, eu realmente gostaria de descobrir tentando, porém não estou conseguindo fazer esta parte de pegar o arquivo todo e passar para uma variavel :S.. bom.. quem souber ajudar =) até mais
-
Bom pessoal, olha só.. eu queria saber porque que no meu programa quando eu uso scanf, quando ele acha um " "(espaço), ele pensa que é o fim do arquivo e não scaneia mais nada pra frente?? olha, fiz um exemplo pra mostrar: arq.c: #include <stdio.h> void main(void){ FILE *arq; char conteudo[9000]; /* Tem como por um valor não definido aki(infinito) ?? mais tarde terei que usar while conteudo != NULL (no meu outro código)*/ arq=fopen("arq.c","r"); fscanf(arq,"%s",&conteudo); printf("%s",conteudo); } compilem este programa, coloquem o arq.c na mesma pasta, e executem ele.. só vai aparecer #include na tela. e o resto do código!? :S espero que vocÊs tenham entendido minha duvida.. não postei realmente o código do meu programa, pois não sei se este é o unico bug dele.. ai seria abuso, não? até + =)
-
Ae cara, obrigadão, você não sabe o quanto me ajudou!! obrigado mesmo, ateh +!!!
-
Olá pessoa, preciso tirar os espaços de 2 strings com "formato" diferente.. vejam o que tem em cada uma delas por exemplo: 1ª: "Jose .cfg" preciso transformar isso pra "jose.cfg" a 2ª: "maria " preciso transformar a string que esta nesse formato para: "maria" deu pra entender?? vou dar uma pesquizada na internet, qualquer coisa eu posto aki.. Agradeço desde já, Heldinho.
-
Bom, arrumei um server temporário pra downloads, e está aki o link da versão 0.7: http://webhostingbr.webcindario.com/whbros0.7.zip porem, acabei de dar upload, então talvez demore alguns minutos(ou horas) para "ativarem o link" do download.
-
existe esta possibilidade sim, mas a intenção era netbios... mapear unidade de rede e tal..... mas vlw assim mesmo =)
-
vlw por avisar, vou arrumar o mais rápido possivel, até +...