Jump to content
Fórum Script Brasil

viniciusams

Membros
  • Content Count

    15
  • Joined

  • Last visited

Community Reputation

0 Neutro

About viniciusams

  1. Amigo, não é exatamente isso não, obrigado pela tentativa o meu problema é que o membro é uma uniao de varias outras estruturas, então, pode ser teste->membro.teste1 ou teste->membro.teste2 ou teste->membro.teste3 Essas estruturas teste1, teste2 e teste3 eu só sei em tempo de execução, então para eu fazer isso só fazendo um switch, pois eu recebo um id, ou então eu utilizo a ideia da minha pergunta, que é utilizar um ponteiro para preencher a estrutura
  2. Pessoal, estou querendo percorrer uma struct e setar valores nela utilizando um ponteiro, é possível? Como? Eu preciso dessa forma porque um campo da struct é uma union e assim podem ser diferentes tipos de estrutura no mesmo campo, então como não sei qual eu vou receber e para evitar um switch imenso estou pensando em fazer dessa forma. Assim vou utilizar offsetof para ajudar tambem. alguém sabe como fazer isso? Valeu
  3. E ai pessoal, estou usando o metodo SHA1(..) que se encontra nas lib do OpenSSL. O método está declarado da seguinte forma nos documentos: unsigned char *SHA1(const unsigned char *d, unsigned long n, unsigned char *md); "SHA1() computes the SHA-1 message digest of the n bytes at d and places it in md (which must have space for SHA_DIGEST_LENGTH == 20 bytes of output). If md is NULL, the digest is placed in a static array." Até ai tudo bem, o problema que não estou conseguindo operar com as diferenças de unsigned e signed char. Detalhe que quero atribuir o val
  4. Estou programando em C Vou analisar a melhor solução para mim. Obrigadão ae pelas dicas e ajudas! []'s
  5. Entendi sim maligno! agora, você teria uma sugestão de desalocar memoria no proprio metodo? porque é uma API e não queria passar esse trabalho para o meu cliente, então queria desalocar os PTR no proprio metodo. Mas todas as tentativas minhas foram em vão. Dessa forma, o cliente desalocaria apenas a lista...
  6. Entendi, então um simples free(testeList) não libera tudo. Deve liberar primeiro os PTR da coluna e depois o testeList? Como faz isso? Cara é sim uma matriz pra ponteiro, eu sou iniciante em C e foi uma solução que eu encontrei para eu passar para o cliente do meu método uma matriz preenchida com valores...
  7. E ae pessoal, espero que me ajudem nessa dúvida. Tenho o seguinte método sintetizado: S16 teste(teste_t **testeList){ S8 *PTR; teste_t *lista; ... //aloca memoria para a lista lista = (teste_t *) calloc (lines * columns, sizeof (teste_t )); // verify all lines for (i = 0; i < lines; i++) { // verify all columns in this line for (j = 0; j < columns; j++) { ... PTR = (S8 *) malloc (sizeof(S8[20])); getValue(j, PTR); lista[i].number.present = TRUE;
  8. Galera, meu problema é o seguinte tenho a seguinte estrutura: typedef struct { int id; char *name } teste_t; Tenho uma função que recebe um ponteiro para o vetor dessa estrutura. Tenho que preencher o vetor. A função origem deve receber os valores corretos. int select(teste_t **testeList){ char *valPTR; //aloca memoria para as linhas *testeList= (teste_t *) calloc(lines, sizeof (teste_t *)); //aloca memoria para as colunas for (i = 0; i < columns; i++) { testeList[i] = (teste_t *) calloc (columns, sizeof (teste_t)); } ... for (...) { getValue(ptr, j, &am
  9. Aloquei memória considerando ser matriz //aloca memoria para as linhas *testeList = (teste_t *) calloc(lines, sizeof (teste_t *)); //aloca memoria para as colunas for (i = 0; i < lines; i++) { testeList [i] = (teste_t *) calloc (columns, sizeof (teste_t)); } Jonathan, é isso mesmo??
  10. Galera gostaria de saber o motivo do erro e como conserta-lo. Tenho um vetor de uma estrutura e aloco memória dinamicamente para ela. Quando vou setar um valor na posição 0 é ok. quando vou setar na posição 1 dá erro. exemplo de código: void select(teste_t **testeList){ ... *testeList= (teste_t *) malloc(n * sizeof (teste_t)); // n = número de linhas printf("VOU PREENCHER\n"); testeList[0]->id.value = 1; printf("DEU CERTO\n"); testeList[1]->id.value = 2; // Dá errado!! Execução: DEU CERTO Falha de segmentação Desde já agradeço
  11. cara antes de tudo obrigado pela resposta mas alterei conforme você me falou e não tenho a resposta esperada. code[0]= 0 name[0]= oþ·X©þ· code[1]= 2052 name[1]= p8HP¿ code[2]= 2052 name[2]= (0¿ code[3]= 2052 name[3]= h¿ no final da função select eu mandei imprimir o vetor e este está com os valores corretos
  12. Galera, sou completamente iniciante em c implementei um código e este não funciona. Declaro um ponteiro que será um vetor, não seto o tamanho. Passo ele como parametro para outra função. Nesta outra função eu aloco espaço e seto os valores neste vetor. O método origem exibe os valores do vetor. Poderiam me ajudar a apontar o erro? int main(int argc, char** argv) { U16 id, i; conexaoinfo_t info; teste_t teste, *testeFinalList; ... select(idconn, &teste, testeFinalList) for (i = 0; i < sizeof (testeFinalList); i++) { printf("code[%d]= %d\n", i, testeF
  13. Pessoal, estou planejando realizar o seguinte trabalho: desenvolver um aplicativo para celular em JME desenvolver um web service que rodará em meu pc conectar ambos via bluetooth e realizar trocas de msgs e objetos. Estou lendo muitas coisas interessantes, aprendendo, porém está faltando aquele Hello World básico que ajuda a entender. Alguém ai conhece o assunto e tem links interessantes, dicas, ou cod fonte mesmo? Valeu!!
×
×
  • Create New...