Boa tarde,
Nos ultimos 2 dias li bastante sobre macros inclusive na própria página do gcc e em outros sites, mas o assunto é ainda confuso para mim e eu estou apanhando muito.
A questão é a seguinte:
Precisava criar um tipo de variável que recebesse o tipo de dado (isso mesmo somente o int, float ...), tentei de vários modos, onde pude concluir que a única saída seria apelar para as macros.
para avançar em meu código preciso de uma coisa que receba o tipo o que eu já fiz, e fazer com que de alguma maneira esse tipo receba quantos * eu quiser, de forma manual isso funciona normalmente, ex.:
#include <stdio.h>
#define x *
#define tipo(type) type x
int main(void)
{
tipo(int) a; //equivalente a declarar um ponteiro int *a;
return 0;
}
se fizer assim também funciona
#include <stdio.h>
#define x *
#define tipo(type) type x x
int main(void)
{
tipo(int) a; //equivalente a declarar um ponteiro int **a;
return 0;
}
acontece que eu preciso concatenar o "*" de forma dinâmica mas não como string.