Llenguaje informático de valor

Los valores izquierdo y derecho del idioma B son elementos de la gramática formal. Los valores izquierdo y derecho de ISO C/C son independientes de la sintaxis y son conceptos puramente semánticos. Además, ISO C estipula que rvalue es el valor en la nota al pie, pero rvalue y value en ISO C son dos conceptos obviamente independientes.

ISO C permite expresiones que no son valores l o valores r (es decir, que tienen valores), indicadores de función, es decir, nombres de funciones únicas. Obtiene el valor del puntero de la función mediante conversión.

ISO C 03 estipula que una expresión debe ser un valor l o un valor r. Pero en ISO C 11, la propiedad lvalue se extiende formalmente a una categoría de valor más compleja: la propiedad lvalue es un lvalue general, a diferencia de un prvalue, un rvalue puro. Los rvalues ​​puros son equivalentes a los rvalues ​​de la versión anterior, así como a xvalue, valor caducado (xvalue). Como expresiones, los nombres de las funciones permanecen en C.

En ISO C/C, los valores l se pueden dividir en valores l modificables y valores l no modificables. Solo se pueden utilizar valores l modificables como operando izquierdo de una expresión de asignación. Un ejemplo de un valor l no modificable es un valor l de tipo constante.

Tenga en cuenta que el valor de la izquierda puede representar un objeto. No existe una relación específica entre los valores y los tipos de objetos. La definición ISO C99 aquí (y las tres correcciones técnicas siguientes) es incorrecta y se ha corregido en ISO C11.

Los valores y las constantes no son necesariamente fijos. Las constantes son elementos sintácticos en el lenguaje C y corresponden a literales C junto con literales de cadena C. Como expresión constante, puede ser un valor l (como una cantidad de cadena literal de C, también llamada constante de cadena, aunque una cantidad de cadena literal de C no es estrictamente una constante) o un valor no l (una constante de C o otros literales de cantidad C). Tenga en cuenta que las constantes aquí son un concepto mucho más estricto que el que se usa habitualmente en matemáticas y no se oponen directamente a las variables;