Estou com uma dúvida no seguinte código
#include <stdio.h>
void somaDois(long numeroEnd) {
int* numeroPtr = numeroEnd;
*numeroPtr += 2;
}
int main() {
int numero = 5;
//int* numeroPtr;
somaDois(&numero);
printf("%d\n", numero);
}
Se um ponteiro guarda um endereço de memória, por que eu recebo warnings dizendo que na linha onde o ponteiro numeroPtr recebe o valor numeroEnd não se pode fazer uma conversão? Para mim essa operação faz sentido, uma vez que ao chamar a função somaDois, passo o endereço da memória. Ao executar a função somaDois, o ponteiro vai receber esse endereço (número).