Hola Suky, por eso hablaba del CCS y su funcionamiento por fuera del ANSI C, ese tipo de declaraciones no son válidas en C pero si en C++ y se llaman argumentos por referencia. La idea es la misma pero el compilador ya sabe que es un puntero y no hace falta desreferenciarlo.Ok!! muchas gracias RICHI :-)
Saludos !
Bueno, creo que todos estamos de acuerdo en que no estamos siendo muy estrictos en cuanto a diferenciar función de procedimiento. Yo personalmente no uso casi la palabra procedimiento, pero si es necesario para que no te equivoques voy a intentar recordarlo.
Eso sólo se da en teoría, y la diferencia es prácticamente nula.
Si recuerdo aquello que aprendí en Informática I de la universidad, la diferencia entre función y procedimiento es que la función está obligada a devolver un valor(y sólo uno).
En cambio, el procedimiento puede no devolver valor alguno, o bien devolver uno o más de uno.
Entonces, podría sacar la conclusión y decir que: la función es un caso particular del procedimiento, cuando se devuelve uno y sólo un valor en la subrutina.
Saludos.
Hola pajaro, la manera de trabajar con varios argumentos es como te explico RICHI777, ademas esta en completo acuerdo con el Kernighan (la biblia del C, de Kernighan & Ritchie). Parece razonable tener sobre este tema una opinion basada en la de los mismos creadores del lenguaje! Fijate la pagina 10 (version en ingles) "...C functions are like the subroutines and functions in Fortran or the procedures and functions of Pascal"... O basta con leer la introduccion de la seccion 1.7 (pagina 25).
En conclusion, es correcto que las funciones devuelven valores, y los procedimientos no. Pero mientras que en lenguajes como Pascal se hacen distinciones entre funciones y procedimientos, en C y C++ no, en éstos sólo existen funciones. En Pascal, con procedure cremos un procedimiento, y con function una funcion, y el primero es un procedimiento y el segundo una funcion. En C podemos crear una función del tipo void y llamarle procedimiento si eso nos hace sentir mejor, pero seguira siendo una funcion. Esta es la tipica clase de discuciones que ademas de hacernos perder tiempo no nos lleva a ninguna parte, mejor dejemos esas distinciones a los que trabajan en lenguajes como Pascal, ya que a ellos si les sirve :lol:
tengo entendido el que plus plus significa estar orientado al objeto. Cosa que es hasta la fecha es imposible de implementar en los pics (por la limitación de los recursos)
yo en mi paso con el ccs ( y muy poquisimo con C18 y hitech) me he dado cuenta que programar en C es un avance significativo en cuanto a agilizar la programación en ensamblador, pero nada mas, igual hay que activar un pin o encender un modulo de forma como se hace en asm, nosotros escribimos una linea de C y el compilador escribe unas cuantas en asm, no podemos olvidarnos de los registros ni las banderas de las interrupciones.
Amigos, de lo poco que he aprendido en el mundo de la programación de los uC pic, he reconocido que hay que diferenciar los compiladores para micros, de los compiladores para ordenadores. No podemos por ejemplo hacer semejanzas con C++. tengo entendido el que plus plus significa estar orientado al objeto. Cosa que es hasta la fecha es imposible de implementar en los pics (por la limitación de los recursos)