[Powered by Google Translate] CHRIS GERBER: Una función es una serie de pasos dentro de un programa más grande, que normalmente se destina a ser llamado varias veces y de varias otras localidades el programa. Al crear una función C, uno de los requisitos es especificar un tipo de valor de retorno. El caso más simple es una situación en la que la llama código no se refiere con el resultado de la función. Este podría ser el caso cuando se está imprimiendo datos a la para mostrar del usuario, al igual que printf. En este caso, se puede declarar un valor de retorno ser de tipo void. Usando vacío simplemente le dice al compilador que no valor será devuelto. Vamos a ver cómo se ve. Digamos que tenemos una función llamada decir_hola que toma un argumento. Vamos a pasar el nombre de una persona y se mostrará un saludo en la pantalla. El nombre será de tipo char *. Y vamos a especificar que como argumento. Mi aplicación no tiene por qué saber lo que estaba impreso o si se imprimió. Así, el valor devuelto será de tipo void. Esta función se puede imprimir en la pantalla con un comando como printf ("Hola,% s \ n ", Nombre);. El saludo se mostrará y el control se pasa volver al código de llamada. Una cosa a tener en cuenta es que cuando el tipo de valor de retorno es nulo, no es necesario que incluya una declaración de declaración de la función. Si opta por incluir una, no se incluye un valor de retorno como argumento. En algunos casos, tiene sentido para devolver una valor de una función. Digamos que estábamos escribiendo una función llamada add_floats. Vamos a pasar dos argumentos, ambos flotadores, llama primero y segundo. Y nos dirá cuál es la suma de los flotadores es. Sabemos que si sumamos dos flotadores juntos, el resultado será un flotador. Teniendo en cuenta que, elegimos un tipo de retorno de flotador. Esta función será realizar este cálculo y volver los valores de una declaración como la devolución primero + segundo;. Cuando el control se devuelve al código de llamada, el El valor resultante está disponible para ese código. Podemos almacenar este valor, así: float resultado = add_floats (3,14, 1,62 ). Resultado en este caso ahora contendría el valor 4,76. Como recordatorio, los valores de punto flotante son imprecisas. Así que si se trataba de un cálculo financiero, utilizando dólares y centavos de dólar, es posible que desee considerar un tipo de datos precisos, tales como int y realizar el cálculo en peniques. Otro caso en el que se desea devolver un valor desde una Se presenta cuando queremos saber si una función se exitosa. Si no se ha realizado correctamente, también puede querer saber qué tipo de error. Digamos que estamos intentando abrir un archivo en el disco para contar el número de caracteres en ella. Si el archivo no se puede abrir, que quiere ser capaz de detener y informar al usuario sobre el problema. Llamaremos a nuestros count_file_chars función y lo hará tomar un argumento. Vamos a pasar en el nombre del archivo usando una char * nombre del archivo llamado. Esta función podría ser algo como esto. En este ejemplo, se esperaría que el número devuelto a ser 0 o más. Esto nos deja a los enteros negativos utilizar como valores de centinela. Un valor centinela es simplemente un valor especial que no es datos legítimos, pero que transmitir la información. En este caso, si vuelvo un -1 al código de llamada, estoy de enviar el mensaje de que ha ocurrido un error mientras tratando de acceder al archivo. Entonces podría comprobar que el valor de retorno para determinar si mi llamada a la función se realizó correctamente. Si el número es 0 o mayor, me gustaría saber el número de caracteres en el archivo. Si, sin embargo, el número fue de menos de 0, podría simplemente imprimir un problema que había ocurrido. Una solución de compromiso a tener en cuenta es que al reservar todo el valores negativos como valores centinela, asumiendo que este es un 32-bit entero, he quitado esencialmente en torno a 2 mil millones posibles valores devueltos. Tipos de valor devueltos de valor son uno de los elementos más importantes de llamadas a funciones. Esperemos que este breve resumen le haya ayudado a pensar en tres tipos fundamentales: vacíos, valores de resultado, y los valores centinela, y cuando cada uno de los tres podrían estar correspondiente en el código. Gracias por su atención.