Converter String pra Float

Olá eu preciso fazer uma conta com uma String mas nao consigo converter ela pra float.
é possivel converter String pra float? se sim como faço isso?

  String lati = "2234.7630S";
  float subLat, numLat;
  String tempLat;
  tempLat = lati.substring(0,2);
  subLat = float(tempLat);
  tempLat = lati.replace(lati.substring(0,2), "");
  numLat = float(tempLat);
  numLat = (numLat/60) + subLat;
  if (lati.endsWith("S")){
    lati.replace("S", "");
    lati = numLat;
    lati = "-" + lati;
  }

o codigo é mais ou menos esse

float calculateLatitude() {

    char input[] = "2234.7630S";
    char sDeg[2];
    char sMinSec[7];

    float deg;
    float minSec;

    int index = 0;

    while (*input) {

        if (index < 2) {
            *sDeg++ = *input++;
        }
        else if (index >= 2 && index < 9) {
            *sMinSec++ = *input++;
        }
        else {
            deg = atof(sDeg);
            minSec = atof(sMinSec);
            deg = deg + minSec / 60.0;

            if (*input == 'S') {
                deg = -deg;
                ++input;
            }
        }

        ++index;
    }

    return deg;
}

entao eu tenho que converter a string para um array de caracteres para poder converter em float.

Muito obrigado pela ajuda

Se usares um array de caracteres, não precisas de converter.

Depois podes usar a função atof() para isso. :slight_smile: