Entiendo que existe un estándar ANSI y un estándar ISO para C. ¿Hay alguna diferencia entre estos dos estándares? Si es así, ¿Que son? Y si no hay diferencia, ¿cuál es el sentido de tener dos estándares?¿Hay alguna diferencia entre ANSI C e ISO C?
Respuesta
En 1990, el estándar ANSI C (con algunas modificaciones menores) fue adoptado por la Organización Internacional de Normalización como ISO/IEC 9899: 1990. Esta versión a veces se llama C90. Por lo tanto, los términos "C89" y "C90" se refieren esencialmente al mismo idioma.
Source, la situación es similar pero anulada para C99. También hay un C FAQ entry al respecto.
La razón por la que hay dos estándares es simple: ANSI es un organismo de normas norteamericano, mientras que ISO es internacional.
Aparte del hecho de que las nuevas revisiones serán ratificadas por la ISO ante los organismos de estándares nacionales como ANSI, los dos son lo mismo. Sin embargo, el uso incorrecto es para "ANSI C" para significar el idioma original estandarizado por ANSI en 1989, y "ISO C", "ISO C99", o simplemente "C99" para significar el estándar actual adoptado por el ISO en 1999.
(Y ya tenemos C11) –
- 1. ¿Hay alguna diferencia entre RPC e IPC?
- 2. ¿Diferencia entre long e int en C#?
- 3. Cómo escribir un menú de consola en ANSI/ISO C?
- 4. ¿Hay alguna diferencia de rendimiento entre ++ i e i ++ en C#?
- 5. E/S sin búfer en ANSI C
- 6. ¿hay alguna diferencia entre [Serializable] y [Serializable()] en C#?
- 7. ¿Hay alguna diferencia entre BOOL y Boolean en Objective-C?
- 8. ¿Alguna diferencia entre estos dos en C++?
- 9. ¿Hay alguna diferencia entre CPython y Python
- 10. punteros void: diferencia entre C y C++
- 11. ¿hay alguna diferencia entre una estructura en C++ y una estructura en C#?
- 12. ¿Hay alguna diferencia entre foo (void) y foo() en C++ o C?
- 13. Diferencia entre C# usando e importación de Java
- 14. ¿ANSI C o ISO C especifica qué debería ser -5% 10?
- 15. ANSI C vs otras normas C
- 16. Diferencia entre C: y C:/
- 17. Diferencia entre default-initialize e value-initialize en C++ 03?
- 18. ¿Cuál es la diferencia entre size_t e int en C++?
- 19. C++ incluir e importar la diferencia
- 20. ¿Hay alguna diferencia entre `ListView.invalidateViews()` y 'Adapter.notifyDataSetChanged()'?
- 21. ¿Hay alguna diferencia entre DataTable.Clear y DataTable.Rows.Clear?
- 22. ¿Hay alguna diferencia entre System.Windows.Clipboard y System.Windows.Forms.Clipboard?
- 23. ¿Hay alguna diferencia entre MsgBox y MessageBox.Show?
- 24. ¿Hay alguna diferencia entre log4net.Config.BasicConfigurator.Configure() y log4net.Config.XmlConfigurator.Configure()?
- 25. ¿Hay alguna diferencia entre! == y! = En PHP?
- 26. ¿Hay alguna diferencia entre SSLv3 y TLS1.0?
- 27. ¿Hay alguna diferencia entre: window.localStorage y localStorage?
- 28. ¿Hay alguna diferencia entre .NET y ASP.NET
- 29. ¿Hay alguna diferencia entre is_int() y ctype_digit()?
- 30. ¿Hay alguna diferencia entre gluLookAt() y glFrustum()?
Luego, agregue la línea de tiempo al revés con C99 que se convirtió en un estándar ISO en 1999 y un estándar ANSI en 2000. Lo importante a tener en cuenta cuando se habla de los estándares C es el año. :) "ANSI C" o "ISO C" generalmente se refieren a C89; cuando las personas se refieren a C99 generalmente lo dicen. –
@ Fabian: Buen punto, asumí que también significaba C89/C90. –