I have GPS from Adafruit... I need convert the latitude and longitude variables (including degrees, minutes and seconds...etc in the coordinates) to char or int to transmit through the SX1272 Lora Module. At this moment I can change float to int, but only pass the degrees....
The minimum array size is 1+1+1+precision+1. That's for a possible '-', a ones digit, a '.', the requested number of decimals, and a zero byte (aka NUL terminator) for this C string. This is NOT the String class.
To convert a float to a 32-bit long int, multiply by a scaling factor to get the digits after the decimal up into the integer portion:
const float scalingFactor = 10000000.0;
long int transmittedInt = (long int) (floatLat * scalingFactor);
You could just send the 4 bytes of the float type, without any conversions.
You might be interested in my NeoGPS library. It is smaller, faster and more accurate than all other libraries. It stores all GPS values in an integer form. This retains the full accuracy of the values, as reported by the device, and it also means that you could send those integers. NeoGPS is available from the Arduino IDE Library Manager, under the menu Sketch -> Include Library -> Manage Libraries.