Ir ao conteúdo
  • Cadastre-se

felipinho2feh

Membro Pleno
  • Posts

    230
  • Cadastrado em

  • Última visita

Reputação

5
  1. Coloca mais 8GB de RAM para ficar tranquilo, e se for possível encaixa o 6500 também acho que vale a pena. Em relação ao ssd, é bem pessoal. Eu esperaria e compraria mais pra frente um modelo bom de 240GB.
  2. Boa tarde galera! Então, estou procurando uma placa-mãe para um 6700k, e gostaria da opinião de vocês. Dentre as placas disponíveis, as que me chamaram atenção foram as seguintes: GA-170X-UD3 Z170 PRO GAMING ASUS Z170-A ASUS MAXIMUS VIII RANGER Os recursos que elas disponibilizam são parecidos, gostaria de saber qual delas vocês consideram melhor contruídas, ou então algumas opiniões diferentes. Abraços!
  3. @Vitor Avancini ponteiro[n] é equivalente a *(ponteiro + n). Então o que ele faz? Ele "anda" n posições para frente na memória, e busca o que tem naquele endereço. Ele é para facilitar, pois como eu mostrei anteriormente, uma abordagem desse tipo com ponteiro de ponteiro ja pode confundir *( *( m + i ) + j )
  4. @Vitor Avancini O não foi para o Mauro. Você definiu os inteiros como 0 de uma forma correta. Você sabe que [] éum operador?
  5. @Mauro Britivaldo Não é opinião. É o que está acontecendo. Seu código não faz sentido. A alocação de memória é desta forma, o problema do código é que o nosso amigo está acessando posição inválida de memória lógica, ou seja, ele deveria revisar o código, o que faria bem para ele.
  6. @Mauro Britivaldo Jovem, você está se confundindo, você não está entendendo o que está acontecendo internamente
  7. Sim, você fez certo. Poderia alocar usando calloc ao invés de malloc, é uma opção. Usando calloc você tem todos os inteiros como 0 por default
  8. Não. tabuleiro[j] = 0 é equivalente a: *( *( tabuleiro + i ) + j ) = 0; Ou seja, não existe apontar pro local zero de memória, e sim definir os inteiros da matriz como 0
  9. Não. É assim: você declara um ponteiro de ponteiro para inteiro -> int **m; Então o que você faz? Em uma matriz n x n você aloca n ponteiros para int -> m = (int**)malloc( n*sizeof(int*) ); Depois, para cada ponteiro de inteiro você aloca um arranjo de inteiros de tamanho n -> for(i = 0; i< n; i++) m = (int*)malloc( n*sizeof(int)) Logo você tem uma matriz de inteiros, que nada mais é que um vetor de vetores. O problema é que na maioria das instituições e cursos, ensinam o modo amador de declarar vetores, por isso a confusão. Espero que tenha entendido.
  10. Não jovem. Você aloca memória para um vetor de ponteiros. Então para cada ponteiro você aloca um vetor de inteiros.
  11. Só pra saber. Estou compilando com o gcc aqui, estou sem tempo no momento, mas fiz alguns testes e parece ter erro de logica, porque alguns funcionam outros não. De cara já vi você acessando memoria que não te pertence no main. Da uma revisada no código. if (verifica == 0) { printf("\nentrou if\n"); tabuleiro[ri][rj] = 1; printf("Inseriu rainha %i" , i); qtdRainhas++; } Nessa parte mesmo. Seria ri - 1, rj - 1.
  12. Vou dar uma olhada aqui, estava ocupado. Mas só uma pergunta, você compila como?
  13. agora vi jovem, achei o erro. Como disse na alocação da matriz adicionado 0 minutos depois Na função construir matriz você precisa retornar o ponteiro, porque a partir do momento que você envia o ponteiro e da malloc, o endereço não é necessariamente o mesmo. adicionado 1 minuto depois int** construirMatriz(int **tabuleiro, int n) { int i, j; tabuleiro = (int**)malloc(n * sizeof(int*)); for (i = 0; i < n; i++) tabuleiro = (int *)malloc(n * sizeof(int)); for (i = 0; i < n; i++) for (j = 0; j < n; j++) tabuleiro [j] = 0; return tabuleiro; } tabuleiro = construirMatriz(tabuleiro, n); mude isso e funcionará =D adicionado 2 minutos depois @Mauro Britivaldo ? Não entendi.
  14. Não existe isso, internamente, um arranjo bidimensional é um ponteiro de ponteiro. Me manda como você alocou esse tabuleiro, eu testei sua função aqui e deu certo, eu aloquei o tabuleiro e testei valores aleatorios e rodou normal.

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