Estoy enviando datos desde Arduino a la consola. Después de recibir el evento desencadenante de datos. Pero ahora me enfrento a este error "no se puede convertir implícitamente el tipo 'char' a 'string'"
introduzca la descripción de la imagen aquí
3 respuestas
Cambia tus comillas simples a comillas dobles. Las comillas simples son para caracteres y las comillas dobles son para cadenas.
No se puede convertir implícitamente el tipo 'char' a 'string'
Es posible que desee consultar las convenciones de casting y tipo. Consulte docs. También puede consultar las razones dadas para que el equipo de diseño de C # no implemente la conversión implícita de caracteres a cadenas en este otro pregunta sobre SO (verifique particularmente la respuesta de Eric Lippert).
Otro flujo que es evidente en su código es la confusión entre el operador de asignación =
y la verificación de igualdad ==
. Es una fuente común de errores. Siempre échale un vistazo cuando hagas condicionales.
También noto que tienes un bucle infinito, es decir, while (true)
. Solo asegúrese de que no se convierta en un bucle infinito (si sabe a qué me refiero: D).
SerialPort myport = new SerialPort();
myport.BaudRate = 115200;
myport.PortName = "COM14";
myport.Open();
while (true)
{
string data_rx = myport.ReadLine();
Console.WriteLine(data_rx);
if (data_rx == "1\r")
{
Console.WriteLine("up");
}
else if(data_rx == "2\r")
{
Console.WriteLine("Down");
}
else if (data_rx == "3\r")
{
Console.WriteLine("Left");
}
else if (data_rx == "4\r")
{
Console.WriteLine("right");
}
Preguntas vinculadas
Nuevas preguntas
c#
C # (pronunciado "see sharp") es un lenguaje de programación multi-paradigma de alto nivel, estáticamente tipado desarrollado por Microsoft. El código C # generalmente se dirige a la familia de herramientas y tiempos de ejecución .NET de Microsoft, que incluyen .NET Framework, .NET Core y Xamarin, entre otros. Use esta etiqueta para preguntas sobre el código escrito en las especificaciones formales de C # o C #.