En este momento estoy trabajando con sistemas integrados y descubriendo formas de implementar cadenas en un microprocesador sin sistema operativo. Hasta ahora, lo que estoy haciendo es utilizar la idea de tener punteros de caracteres terminados en NULL y tratarlos como cadenas donde NULL significa el final. Sé que esto es bastante común, pero puede que siempre cuento con que este es el caso?
La razón por la que pregunto es que estaba pensando en usar un sistema operativo en tiempo real en algún momento, y me gustaría reutilizar tanto como sea posible mi código actual. Entonces, para las diversas opciones que existen, ¿puedo esperar que las cadenas funcionen igual?
Permítanme ser más específico para mi caso. Estoy implementando un sistema que toma y procesa comandos a través de un puerto serie. ¿Puedo mantener mi código de procesamiento de comando igual y luego esperar que los objetos de cadena creados en el RTOS (que contiene los comandos) se terminen NULL? ¿O sería diferente según el sistema operativo?
Actualizar
Después de que me aconsejaron echar un vistazo a esta pregunta , he determinado que no responde exactamente lo que estoy preguntando. La pregunta en sí es preguntar si siempre se debe pasar la longitud de una cadena, que es completamente diferente de lo que estoy preguntando, y aunque algunas de las respuestas tenían información útil, no son exactamente lo que estoy buscando. Las respuestas allí parecían dar razones de por qué o por qué no terminar una cadena con un carácter nulo. La diferencia con lo que estoy preguntando es si puedo esperar más o menos que las cadenas innatas de diferentes plataformas terminen sus propias cadenas con nulo, sin tener que salir y probar cada plataforma por ahí si eso tiene sentido.