No puedo entender los valores de retorno en la programación. ¿Alguien puede ayudarme?

Hmm, así que comencemos con una función simple. Cada función debe devolver un valor a menos que esté calificado con un “vacío”, lo que significa no devolver nada.

Cualquier número ya sea int, float o double que no sea cero se considera verdadero y cero solo se considera falso.

Devolver 0/1 frente a verdadero / falso es esencialmente lo mismo. Si los considera como booleanos, ambos tienen un espacio de un bit. Siendo un bit, el valor de un verdadero es 1 y para falso es 0.

Pensemos en términos de la función principal y luego devolver 0 significa que el programa salió correctamente y el sistema operativo no tiene que hacer nada, mientras que cualquier otro número puede tener un error asociado. En otras palabras, permitir más de un valor de retorno le da flexibilidad al programador para usar el sistema de verificación de errores del sistema operativo.

Estoy seguro de que ha encontrado situaciones en las que su programa se ha bloqueado repentinamente y el sistema operativo informa un mensaje de error críptico. Esto es esencialmente lo que está sucediendo, ya sea que el sistema operativo ha encontrado una violación por parte del programa o el programa mismo se apaga e informa un error al sistema operativo.

Gracias por A2A.

‘Retorno’ es una declaración, que indica qué función va a devolver.

Excepto void -> Si su función no devuelve nada, debería ser void .

Ahora vamos a avanzar más.

1/0 es equivalente a verdadero / falso, en C, no admite palabras clave booleanas porque no se define como una palabra clave en C, puede usar macro para definir su propia palabra clave.

En C99, admite bool, pero debe agregar el archivo de encabezado ” stdbool.h ” y es un typedef (en stdbool.h ) a la palabra clave C99.

Enlace de ejemplo: –

Ideone.com

Espero que te ayude.

Cuando le pides dinero a tus padres, ellos te dan dinero.

Cuando solicita $ 100, le dieron $ 50, los $ 50 son el valor de retorno. Por qué dieron $ 50 cuando pides $ 100 es lo que sucede en el código, pero los $ 50 son el resultado final.

Lo mismo ocurre con la programación, cuando das instrucciones, la máquina te da algo, a menos que tengas un bucle ilimitado, que luego se bloqueará.

Por cierto, verdadero y falso son en realidad 1 y 0 respectivamente en tipo de datos booleanos, son básicamente los mismos.

EDITAR: no me di cuenta de que preguntas en C, la respuesta de Andrei Manu ya cubre esto, pero no hay “verdadero” y “falso” en C, solo 1 y 0. SI pones

#define true 0
#define false 1

(NO HAGA ESTO) entonces debe devolver falso si desea que el programa salga con éxito. (o malvado: #define true false )

Es simplemente una convención. En C, verdadero y falso no existen, solo usamos enteros. La convención es:

  • falso está representado por el valor 0
  • verdadero está representado por cualquier valor que no sea 0

Por ejemplo, si escribes:

si (0) {

nunca ejecutará lo que esté en esto si, porque 0 es falso.

Si tú escribes:

si (6841684) {

Siempre verificará la condición, porque 6841684 es verdadero (como 1, -1 o -1684668).

Entonces, al final, devolver 0 ES devolver falso. Devolver 1 ES devolviendo verdadero.

C no tiene valores booleanos (verdadero, falso). Si quieres simularlos, usa
#DEFINE TRUE 1
#DEFINE FALSE 0

Es posible que haya visto que main devuelve 0, que es un código de salida exitoso, para el sistema operativo. Para sus funciones, para evitar confusiones, recomendaría usar define para verdadero y falso.

C no tiene tipo booleano, por eso. No lo tiene porque fue creado con el objetivo de ser lo más minimalista posible e intencionalmente no proporcionar ninguna abstracción.

De ninguna manera soy un usuario de C o un experto en C. Así que no puedo contarte sobre C. Pero he tomado 4 semestres de C ++ y puedo decirte que devuelves 0; se usa en funciones principales porque cada función que no es nula debe devolver algo. Dependiendo del propósito de su programa, hacer que devuelva verdadero, falso, otros números o una cadena podría potencialmente estropear su resultado o incluso agregar más que un valor constante a su complejidad de tiempo general. Es por eso que devuelve 0; es popular para programas exitosos. Entonces, ¿qué pasa con los programas fallidos? retorno 1; significado devuelve falso. En C ++ en términos de retorno 0 o 1; entonces el valor de verdadero o falso se invierte a ese respecto. Sin embargo, no sé cómo es en otros idiomas.

El ‘valor de retorno’ se usa cuando una función B finaliza y el control se pasa a otra función A (la función que originalmente llamó a esta función B).

La parte del valor de la devolución es arbitraria, pero a menudo se usa como una forma de señalar a la función de llamada A que la función B tuvo éxito (valor = 0) o falló (valor = 1). Dependiendo de qué función B esté haciendo, la interpretación de un valor = 0 podría ser verdadera y el valor = 1 falso.

C no tiene un tipo booleano, por lo que los booleanos generalmente se simulan con ints. Puede, por supuesto, # definir verdadero (1) y falso (0), para simular las constantes, si lo desea.

En un proyecto real, return true / false representa si la función se está ejecutando correctamente y usar 1/0 para representar (true / false o false / true) es habitual en muchos idiomas. En lenguaje C, usamos 1/0 porque verdadero / falso no está predefinido en C, excepto que usa la declaración #define.