Dentro de mi bucle principal hay esta cadena:
String string1;
Tengo una función que tomará string1 como parámetro y la usaré para enviar esta cadena como SMS.
sendSMS(string1);
Esta es la función sendSMS () (sin parámetros):
void sendSMS()
{ sms.beginSMS(remoteNumber);
sms.print(finalstr);
sms.endSMS();
lcd.setCursor(0, 0);
lcd.print("Message sent!");
delay(10000);
}
Mis preguntas son:
- ¿Cómo pongo el parámetro de entrada de cadena en sendSMS?
- ¿También necesito usar un prototipo de función para sendSMS ()? (para que aparezca tres veces, 1 en el prototipo, 1 en la declaración y uno en la llamada). ¿O no necesito usar el prototipo de función antes del bucle principal ()?
programming
c++
usuario1584421
fuente
fuente
void sendSMS(String& thisIsAString)
o mejor aún, una referencia constante, si la función no modifica el argumento de cadena:void sendSMS(const String& thisIsAString)
Yo diría que nunca vuelva a usar String. Cuando el código crezca y el uso de memoria sea crítico, llegarás a un callejón sin salida. Sé que es más conveniente, pero dale una oportunidad a las matrices de char. Algo como:
Cambié la función a bool. Significa que puede usarlo dentro de una instrucción if, donde desea que se complete antes de continuar con su código.
Deberá asignar memoria usted mismo para la matriz; declararlo así:
Aquí, asigno 32 bytes para datos y un byte adicional para el carácter que significa "fin de cadena" (es eso \ 0).
fuente
Tu puedes cambiar
void sendSMS()
a
void sendSMS(String myinputstring)
puedes usar myinputstring en tu código.
fuente