Enviado em 24/11/2014 - 00:59h
Boa noite!#include <stdio.h> void showStock(int a, int p, int stock[][p]); int main( ) { int a = 3; int stock[][3] = {{9, 5, 6}, {8, 2, 1}, {7, 3, 4}}; showStock(a, 2, stock); return 0; } void showStock(int a, int p, int stock[][p]) { int i; p--;//Para ajustar com o endereço da matriz que começa em 0. for(i=0; i < a; i++) printf("(%d, %d) -> %d\n", i, p, stock[i][p]); }
Enviado em 24/11/2014 - 19:32h
Eis um problema com VLAs no C99. A informação de tamanho não fica embutida no tipo do argumento, e o compilador confia na declaração do parâmetro e no uso consistente que você vai fazer dela.{ {9, 5}, {6, 8}, {2, 1}, {7, 3}, {4, /* EPA!!! Memória inválida! */} }
Enviado em 27/11/2014 - 18:22h
No seu caso, como você declarou um “array de (quantidade de elementos calculada pelo compilador) arrays de 3 elementos inteiros”, um jeito de corrigir seria passar 3 como argumento para a função.showStock(a, sizeof stock[0]/sizeof stock[0][0], stock);
#define showStock_simple(n, matriz) showStock(n, sizeof matriz[0]/sizeof matriz[0][0], matriz) /* ... */ showStock_simple(a, stock);
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Como dividir duas janelas igualmente e lado-a-lado na sua tela
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
MOVER ARQUIVO ENTRE PARTIÇOES (0)
Ocomon 6.0.1 - Problemas ao editar configurações estendidas (0)
Ingress NGINX Controller CVSS base score of 9.8 (5)