Sisi, está claro que la parte de la lógica, salvo algunos posibles cambios de variables por cambios de arquitectora, pero lo básico se mantiene.
Lo de realizar varios archivos, lo hago, de hecho mis soft para c18 tienen decenas de archivos, cada uno con tareas muy pequeñas y específicas jeje.
Por spuesto que depende mucho dle tipo de aplicaciones en las cuales uno esté inmerso, en lo mío en general se tratan de aplicaciones de control o protocolos de comunicación, donde prima mayoritariamente el hardware. Si fueran aplicaciones diferentes, por ej, con interfaz de usuario,etc, o donde deba hacer algún cálculo entonces sí, la portabilidad sería mucho mayor. No obstante apuntaba a desmitificar el famoso latiguillo "El ANSI C es portable" porque muchos se atan de eso y luego cuando les toca la realidad se frustan , queria notar eso nomás, no cómo codificar