Ir para conteúdo
Fórum Script Brasil

tuga

Membros
  • Total de itens

    48
  • Registro em

  • Última visita

Tudo que tuga postou

  1. tuga

    Servidor de ficheiros

    Boas Estou com um projecto com o objectivo de realizar um servidor de ficheiros. Este já está feito agora estou implementando os extras. Para já já fiz a opção de visualizar o ficheiro no caso de ser imagem mas gostaria de implementar mais extras...... Se sabem de algum porreiro por favor deem ideias.... Estou aberto a sugestões... Obrigado e postem alguma coisa :) TUGA B)
  2. tuga

    copiar gif

    nenhuma destas opções funcionou... se alguém tiver ideias post e já agora é linux
  3. tuga

    copiar gif

    boas estou a tentar fazer uma copia de um uma imagem .gif através da leitura e escrita binaria mas não está a funcionar o que eu tentei fazer foi: #include <stdio.h> /* Standard input/output definitions */ #include <string.h> /* String function definitions */ #include <unistd.h> /* UNIX standard function definitions */ #include <fcntl.h> /* File control definitions */ #include <errno.h> /* Error number definitions */ #include <termios.h> /* POSIX terminal control definitions */ #include<stdlib.h> typedef struct dados{ char *dado; struct dados *next; }tdados, *Aptdados; Aptdados dados; void inserirdado(char dado[20]) { Aptdados info; info = (Aptdados)malloc(sizeof(tdados)); strcpy(info->dado, dado); if(dados == NULL) { info->next = NULL; dados = info; } else { info->next = dados; dados = info; } } int le() { FILE *fp; char dado[20]; int n; fp = fopen("lecom.gif","r"); while(n > 19) { n = fread(dado, 1, 20, fp); inserirdado(dado); } printf("\n Leitura completa."); fclose(fp); getchar(); return 1; } int escreve() { Aptdados m; m = dados; FILE *fd; fd = fopen("cop.gif","w"); while(m != NULL) { fwrite(m->dado, 1, 20, fd); m = m->next; } printf("\n Cópia completa\n"); fclose(fd); return 1; } int main() { le(); getchar(); escreve(); return 1; } Este código assim está a dar falha de segmentação Se alguém puder ajudar agradecia Cumps Thga
  4. Tou a realizar um projecto de comunicações e tenho tudo bem encaminhado, mas cheguei à parte do CRC/CHECKSUM e estou com alguma dificuldade nisto. Ou seja eu tenho uma trama(char trama[46]) que vai ser um pacote que consiste em 46bytes e dentro dessa trama eu terei de colocar um valor correspondente ao crc/checksum.Será que alguém poderá enumerar os passos necessários para obtenção desse valor Cumprimentos Tuga
  5. Boas Tou a realizar um projecto de comunicações e tenho tudo bem encaminhado, mas cheguei à parte do CRC/CHECKSUM e estou com alguma dificuldade nisto. Ou seja eu tenho uma trama(char trama[46]) que vai ser um pacote que consiste em 46bytes e dentro dessa trama eu terei de colocar um valor correspondente ao crc/checksum.Será que alguém poderá enumerar os passos necessários para obtenção desse valor Cumprimentos Tuga
  6. tuga

    ver o maior

    Boas Segundo eu compreendi o problema é ver o tamanho real de uma string, se é isso basta usar a função strlen() da libraria string.h Olhe o código #include <stdio.h> #include <string.h> int main() { char vect[30] = {"ola"}; printf("\n o tamanho real é %d ", strlen(vect)); getchar(); return 1; } o resultado da execução vai ser " o tamanho real é 3 " cumps
  7. Caro Durub, Apenas 1a palavra. ESPETACULO..... directo ao assunto.....tks Abraços
  8. Boas gostaria de saber se é possivel obter o tamanho de um ficheiro em c. tipo eu tentei algo do genero: int j = system("du file -b"); mas não deu certo se alguém já souber de algo que poste Abraços
  9. tuga

    strings e audio

    por acaso não sabia isso não, mas me deparei com outro problema, pois normalmente os arquivos de som são maiores que 97.7kb (100000) se acrescentar uma 0 na variavel "read", ele dá falha de segmentação, existe alguma maneira de contornar este problema ? e só mais uma qustão, porque é que inicializa a variavel "short int bytesRead = 0x03FF;" com este valor? Abraços
  10. tuga

    strings e audio

    Boas em termos de caracteres eu já tinha experimentado mas em termos de som não consegui ainda. Com a ajuda de seu código fiz : int main(void) { FILE *file; FILE *wfile; char read[100000]; short int bytesRead = 0x03FF; file = fopen("1.wav", "r"); wfile = fopen("cop.wav", "w+"); while( bytesRead > 0 ) { bytesRead = fread(&read, 1, 100000, file); } fwrite(read, 1, strlen(read), wfile); fclose(file); fclose(wfile); return 0; } fiz desta maneira mas não tá funcionando se tiver alguma coisa que ajude agradecia
  11. tuga

    strings e audio

    boas gostaria de saber se é possível guardar a informação de um arquivo audio numa string. tipo: char som[]; FILE *fp; ....... abrir ficheiro while( != EOF) read(fp, &som, sizeof(som)); ........ isto assim, e caso quisesse construir outra vez o ficheiro seria utilizar a função write().... Digam se isto é possivel ou existe uma maneira mais facil, ou mais dificil, deem links de outras paginas, sobretudo ajudem postem algo Abraço
  12. tuga

    string de "som"

    boas gostaria de saber se há alhuma maneira de transformar um ficheiro de som numa string??se alguém tiver uma ideia ou algum site onde me possa informar melhor agradecia Cumps Tuga
  13. oi Ana bem eu axo que é mais ou menos isto #include <stdio.h> #include <string.h> #include <conio.h> #define MAXV 20 #define MAXM 10001 int main(){ char linha[100];; int a,t=0; char v[MAXV]; char car[MAXV]; int i,ch; int b; int nc; char bo; FILE*arquivo; b=0; arquivo=fopen("entrada.txt", "r"); fscanf(arquivo, " %d", &a); if((a<1)||(a>MAXM)){ printf("\nErro: O numero lido excede o numero maximo de operacoes aceito pelo programa!!!\n\n"); printf("\nO programa aceita no maximo 10000 operacoes de troca!!!\n\n"); getchar();getchar(); exit(1); } /*fgets(linha, 100, arquivo); nc=strlen(linha); if(nc<1){ printf("\nErro: não há string no arquivo!!!\n\n"); getchar();getchar(); exit(1); }*/ printf(" %d\n", a); getchar(); for(i=0; i<MAXV; i++){ while(fscanf(arquivo, " %c", &ch) != EOF){ printf(" %c\n", ch); } printf("\n não há mais caracteres no arquivo!!!\n\n"); getchar();exit(1); } } Agora só falta a comparação com os caracteres, eo seja, se for caracter não imprime e mete num vector, senão imprime.... Nota só no fim imprimes o vector de caracteres. Bem agora axo que tá facil mas deixo pa você Cumprimentos de Portugal
  14. tuga

    captar som

    boas tou fazendo um projecto escolar e gostaria de saber se há alguma função para captar o som vindo da placa de som(tipo microfone) constantemente, já agora tou trabalhando em linux. Se puderem ajudar agradecia. Obrigado cumps Tuga
  15. oi pessoal tava eu fazendo o meu projecto de universidade para uma cadeira quando esbarrei num problema pois ao adicionar um item ao arraylist ele dá erro "NULLPOINTER EXCEPTION" vou postar o codigo para ver se descobrem algo... dá erro ao adicionar um novo pedido no metodo public void addpedidonovo..... import java.util.*; import java.io.*; public class Ugestao { private String nome; ArrayList <Pedido>pedidos_atendidos; ArrayList <Pedido>pedidos_nao_atendidos; ArrayList <Veiculos>taxis; ArrayList <Veiculos>shuttles; public Ugestao() { nome = ""; ArrayList <Pedido> pedidos_atendidos = new ArrayList<Pedido>(); ArrayList <Pedido> pedidos_nao_atendidos = new ArrayList<Pedido>(); ArrayList <Veiculos> taxis = new ArrayList<Veiculos>(); ArrayList <Veiculos> shuttles = new ArrayList<Veiculos>(); } public Ugestao(String nome) { this.nome = nome; ArrayList <Pedido> pedidos_atendidos = new ArrayList<Pedido>(); ArrayList <Pedido> pedidos_nao_atendidos = new ArrayList<Pedido>(); ArrayList <Veiculos> taxis = new ArrayList<Veiculos>(); ArrayList <Veiculos> shuttles = new ArrayList<Veiculos>(); } public ArrayList<Pedido> getpedidosatendidos(){return pedidos_atendidos;} public ArrayList<Pedido> getpedidos_nao_atendidos(){return pedidos_nao_atendidos;} public void addpedidonovo(String nome, String local_recolha, String local_descarga, String contacto, String numero_pessoas){ pedidos_nao_atendidos.add(new Pedido(nome, local_recolha , local_descarga , contacto, numero_pessoas)); } } Bem se puderem ajudar agradecia Obrigado
  16. tuga

    fazer lista ordenada

    já consegui fazer certinho....... obrigado na mesma se alguém tiver uma duvida semelhante que post neste tópico :D :D
  17. tuga

    fazer lista ordenada

    ei kandrade ei já fiz essa parte de codigo e compila e executa certinho mas quando introduza a informação nesta lista ele dá erro de memoria void FE::inserirord(Aptle lista, Ident idente) { if (lista->first == NULL) addFirst(idente); else if (idente.get_grav() > lista->first->ident1.get_grav()) addFirst(idente); else if (idente.get_grav() < lista->last->ident1.get_grav()) addLast(idente); // now must have at least two items in list else { Aptle oldIter = lista->first; Aptle iter = lista->first->next; while (iter->ident1.get_grav() > idente.get_grav()) { oldIter = iter; iter = iter->next; } // here iter.data >= x // insert x into a new node before iter //IntListNode newNode = new IntListNode(); //newNode.data = x; struct le *item; item = (Aptle)malloc(sizeof(tle)); item->ident1=idente; item->next = iter; // iter == oldIter.next oldIter->next->ident1 = idente; } lespera=lista; } void FE::addFirst(Ident idente) { Aptle lista = lespera; lista->first->ident1 = idente; if(lista==NULL) lista->last->ident1=idente; lespera=lista; } void FE::addLast(Ident idente) { Aptle lista = lespera; if (lista->last == NULL) // treat case of empty linked list { lista->last->ident1 = idente; lista->first = lista->last; } else // case of non-empty linked list { lista->last->next->ident1 = idente; lista->last = lista->last->next; } lista->last->ident1 = idente; lista->last->next = NULL; lespera=lista; } eu já fiz varios testes, e acho que o erro deve-se ao facto de não inicializar os apontadores e a lista a NULL, mas não tenho a certeza e tb não sei como inicializar a NULL eu axo que posso estruturar meu codigo assim não posso??
  18. tuga

    fazer lista ordenada

    oi pessoal: tou fazendo uma base de dados que requer uma lista ordenada e eu não tou conseguindo fazer lá muito bem.... eu vou postar a setrutura para vocês compreenderem melhor inserir(Aptle lista, Ident idente) { if(lista==NULL || lista->first->ident1.get_grav() < idente.get_grav()) // se a lista estiver vazia ou o elemento a inserir tiver a maior gravidade é preciso inserir no inicio da lista { inserirnoinicio(Aptle lista, Ident idente); } else { // procura a posicao que deve inserir while(lista!=NULL && lista->ident1.get_grav() < idente.get_grav()) // enquanto a lista for fiferente de NULL e a gravidade maior percorre a lista { lista = lista->next; } inserenaposicao(Aptle lista, Ident idente); // ao sair do ciclo quer dizer que ou é NULL e vai inserir no fim da lista, ou encontrou um elemento com gravidade menor e tem de inserir naquela posição } } ou seja tou postando isto porque necesito de fazer as duas funções---------inserirnoinicio(Aptle lista, Ident idente); e inserenaposicao(Aptle lista, Ident idente); eu penso que no conteudo da primeira função, na inserirnoinicio(Aptle lista, Ident idente); eu teria isto, se encontrarem algum erro no código avisem pf: inserirnoinicio(Aptle lista, Ident idente) { lista = (Aptle)malloc(sizeof(tle)); lista->ident1=idente; lista->next = NULL; } bem pessoal se puderem dar uma vista de olhos e ajudarem aí agredecia muito Obrigado
  19. tuga

    guardar e carregar lista

    oi pessoal este post não teve posts mas eu consegui descobrir meu erro, é que tinha um conflito de variaveis.... se alguém tiver o mesmo problema que post alguma coisa.... cumps
  20. tuga

    vetor em c

    oi: seu código está um bocado confuso #include <stdio.h> #include <stdlib.h> #define MAX 10 main() { int vet[MAX], total, i; for(i = 0; i<MAX; i++){ // até ao fim do vector faz printf("Digite um numero: "); // pede para inserir os valores no vector scanf("%d", &vet[i]); // guarda os valores inseridos no vector } i=0; total = 0; for(i=1; i<MAX; i++) if(vet[i]%2==0) total++; // incrementa na variavel total printf("%d elementos pares",total); //o numero de pares está guradado na variavel total getchar(); // aguarda que você prima enter getchar(); return 0; } seu erro era usar a mesma variavel no ciclo e no contador das ocorrencias, no inicio tb tinha o erro de imprimir o vetor antes de inserir os valores bem espero ter ajudado se ainda tiver duvidas post alguma coisa cumps
  21. oi pessoal tou com uma duvida, ou mesmo um problema....é que tou fazendo uma base de dados e empanquei no metodo de guadar/carregar a lista, epero que vccs deem uma ajuda..bem eu vou postar o que fiz.. este é o metodo que guarda num ficheiro guardardoentes(void) { FILE *fp; Aptdoentes j = doentes; tdoentesaux jaux; fp=fopen("Doentes.dat","w"); while(j!=NULL) { strcpy(jaux.num,j->doente1.get_num()); strcpy(jaux.nome,j->doente1.get_nome()); strcpy(jaux.morada,j->doente1.get_morada()); strcpy(jaux.tlf,j->doente1.get_tlf()); strcpy(jaux.tlm,j->doente1.get_tlm()); strcpy(jaux.sexo,j->doente1.get_sexo()); strcpy(jaux.bi,j->doente1.get_bi()); strcpy(jaux.data_nasc,j->doente1.get_data_nasc()); jaux.numEpisodios -> j->doente1.getnumepisodios(); fwrite(&jaux,sizeof(tdoentesaux),1,fp); getchar(); j=j->next; } fclose(fp); } ou seja neste código eu estou a passar os valores da estrutura original para uma estrutura auxiliar e "tdoentes" é a variavel da estrutura este é o metodo que carrega do ficheiro carregardoentes(void) { FILE *fp; fp = fopen("Doentes.dat","r"); doentes = NULL; tdoentesaux jaux; while(fread(&jaux, sizeof(tdoentesaux),1,fp)!=0) { Doente j(jaux.num ,jaux.nome ,jaux.morada ,jaux.tlf ,jaux.tlm ,jaux.sexo ,jaux.bi ,jaux.data_nasc,jaux.numEpisodios); j.printdoente(); inserir(j); } printf("\n Doentes carregados!!!\n\n"); getchar(); fclose(fp); } ou seja lê a variavel da estrutura cria o objecto e insere na lista o problema é que uns valores aparecem trocados e alguns até aparecem 2 valores numa só variavel se encontrarem algum erro no código ou tiverem uma ideia mais simples em como fazer digam qualquer coisa obrigado
  22. se você ainda não tem nada vai ser muito mau..... :o se você não sabe nem difinir uma estrutura de dados aconselho a ir à parte dos tutoriais e começar a praticar pelo básico para chegar a esse nivel.....
  23. tuga

    BIBLIOTECAS DO C++

    você te m o conteudo do alloc.h no seguinte link link para o tornar uma header ou seja para ficar ".h" basta abrir o seu compilador fazer copy paste do código e por "save as" e como tipo põe "header file" e claro põe na pasta dos include...é simples se assim ainda tiver alguma dúvida post qulquer coisa.. até mais
  24. tuga

    duvida entre strings

    valeu pessoal: é que na minha base de dados num mix de C\C++ estava tentando usar o "strdup" com vectores e cheguei à conclusão que não era possivel usar os strdup daí a duvida obrigado pela rápida resposta
×
×
  • Criar Novo...