I am creating a code that for now needs to read the name of N companies (whose N is given). I'm trying to enter the names but the program simply does not read and is the first time I try to allocate dynamic arrays. The code is here:
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
void LeiaDadosDasEmpresas( int quantEmpresas , char ** nomeEmpresas ){
int i ;
for( i = 0 ; i < quantEmpresas ; i++ ){
printf("\nDigite o nome da %dª empresa : ", i + 1 );
scanf("%[^\n]s", *(nomeEmpresas + i) );
}
}
int main()
{
int quantEmpresas, i ;
char ** nomeEmpresas ;
printf("Digite o numero de empresas que queira analisar : ");
scanf("%d", &quantEmpresas );
nomeEmpresas = (char **) malloc( quantEmpresas*sizeof(char *) );
for( i = 0 ; i < quantEmpresas ; i++ ){
*(nomeEmpresas + i) = (char *) malloc( 20*sizeof(char) ); /** cada nome possui no max 20 caracteres ( incluindo '/0 ' ) **/
}
LeiaDadosDasEmpresas( quantEmpresas , nomeEmpresas );
return 0 ;
}