Я создал вектор размера, определенного постоянным, и вызывая функцию, которая возвращает целый вектор мне, эта ошибка произведена:
несовместимые типы, назначая Вам это печатает 'интервал * []' от типа 'интервал'
Подпись функции - это, я понижаюсь. Намерение состоит в том, чтобы приписать возвращение от вектора до другого.
#include <stdlib.h>
#include <stdio.h>
#define TAM 50
int main(int argc, char **argv)
{
int *V_VALORES_GERADOS[TAM];
int *VETOR_ORDENADO[TAM];
int *VETOR_VALORES[TAM];
int *V_FREQ_SIMP_ABS[TAM];
float *V_FREQ_SIMP_REL[TAM];
int *V_FREQ_ACUM_ABS[TAM];
float *V_FREQ_SIMP_ACUM[TAM];
V_VALORES_GERADOS = Gerar_Vetor(6); //ERRO AQUI(PRIMEIRA INSTRUÇÃO DA MAIN)
}
int *Gerar_Vetor(int FATOR){
int x;
int * VALORES = (int *) calloc (TAM, sizeof (int));
//Gera os valores e os armazena em um vetor.
for (x = 1;x <= TAM; x++) {
VALORES[x] = rand() % FATOR + 1;
}
if (VALORES == NULL)
return (NULL);
else
return VALORES;
}
С этим строительством:
int *V_VALORES_GERADOS[TAM];
Вы говорите, что V_VALORES_GERADOS - множество указателей для целого.
Его распорядок возвращает указатель для множества целых.
Посмотрите изменения, которые я сделал в его кодексе:
#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int *Gerar_Vetor(int FATOR);
#define TAM 50
int main(int argc, char* argv[])
{
int * P_V_VALORES_GERADOS = NULL;
//inicializa semente
srand( (unsigned)time( NULL ) );
P_V_VALORES_GERADOS = Gerar_Vetor(6); //ERRO AQUI(PRIMEIRA INSTRUÇÃO DA MAIN)
return 0;
}
int *Gerar_Vetor(int FATOR)
{
int x = 0;//sempre inicialize as variáveis
int * VALORES = (int *) calloc (TAM, sizeof (int));
//aqui você testa se a alocação teve êxito, pois se não fizer isto a execução seguinte pode causar erros em seu programa.
//altera para printar na tela o motivo do erro.
if (VALORES == NULL)
return (NULL);
//Gera os valores e os armazena em um vetor.
for (x = 1;x <= TAM; x++)
{
VALORES[x] = rand() % FATOR + 1;
}
return VALORES;
}