Talk:C99
This is the talk page for discussing improvements to the C99 article. This is not a forum for general discussion of the article's subject. |
Article policies
|
Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
This article is rated C-class on Wikipedia's content assessment scale. It is of interest to the following WikiProjects: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Untitled
editThe section "Compatibility with C++" needs more detailed explanation of the relationship between C99, TR1 and C++0x. Afog (talk) 19:52, 30 October 2008 (UTC)
This article is lacking IMO
editI think it needs more explanation as to what exactly the features are. Something along the lines of what C++0x has but maybe shorter. --Snaxe/fow (talk) 20:45, 17 November 2008 (UTC)
Additional Compiler
editMinGW?
dmelliott 08:28, 13 May 2009 (UTC) —Preceding unsigned comment added by Dmelliott (talk • contribs)
- is GCC on Windows. —Preceding unsigned comment added by 69.166.47.137 (talk) 00:25, 30 March 2010 (UTC)
I don't see the HP C compiler (for OpenVMS) listed. From what I've read it is likely in the "mostly" category, but I don't know what tests to run. One thing I found yesterday is that it allows declarations in a for statement. — Preceding unsigned comment added by 68.98.77.182 (talk) 17:43, 15 December 2013 (UTC)
C89 vs C90
editThe "previous version" is first mentioned as C89 then referred to as C90 194.237.142.7 (talk) 12:04, 3 August 2009 (UTC)
- Now clarified. — DAGwyn — Preceding unsigned comment added by 158.12.36.83 (talk) 21:50, 20 June 2011 (UTC)
Undefined or Implementation Specific Behavior
editthere is a large number of things that are left open to implementation, for instance:
- What to do on integer overflow; give error or start over at 0
- please add something here if you know something--Glas(talk) 03:26, 21 December 2009 (UTC)
- C intentionally does not specify well-defined behavior for certain kinds of run-time errors, in order to avoid slowing down correct programs. That has nothing to do with C99 as such. — DAGwyn
Stuff removed from Boolean data type article
editThe following section was removed from the article Boolean data type:
begin removed text
The C99 version of C provides a built-in _Bool
data type. It is large enough to store the values 0
and 1
. When any scalar value is converted to _Bool
, the result is 0
if the value is 0
, otherwise 1
.
If the <stdbool.h>
is #included
, the macros bool
, true
and false
can be used to refer to _Bool
, 1
and 0
, respectively:
#include <stdbool.h>
int main()
{
bool b = false;
b = true;
}
These macros bool
, true
and false
are unrelated to the C++ boolean type, and their use in programs that mix C and C++ may lead to incompatibilities.[citation needed]
end removed text
Is there a place for this text in the C99-related articles? Perhaps in the Wikibook? Thanks, and all the best, --Jorge Stolfi (talk) 23:28, 30 December 2009 (UTC)
- The current C99 article already specifies that some new data types were added. I don't know why the cited text was removed from the Boolean data type article. Unfortunately, even with _Bool C doesn't make much use of a Boolean type; for example, relational expressions have
int
type, not_Bool
. — DAGwyn — Preceding unsigned comment added by 158.12.36.83 (talk) 21:59, 20 June 2011 (UTC)
See Also
editI don't really see why C++0x and the C++ Technical Report 1 are in an article about a C language specification. It seems to me they're completely unrelated. It makes some sense for C++0x to be in the C1X page for various reasons, but in the C99 page? That just seems a bit unusual to me. Especially given that there are links to C++ already in the article. 12.106.190.70 (talk) 18:33, 23 June 2011 (UTC)
- C++0x is relevant because it inherits a lot of features from the C99 version of the C language.1exec1 (talk) 14:16, 26 June 2011 (UTC)
- Then wouldn't it make more sense to only link the C99 page from the C++0x page, or perhaps to put a "derivatives" section in and list it there? It doesn't seem very obvious why it's there. 12.106.190.70 (talk) 17:01, 29 June 2011 (UTC)
Declarations vs defnitions
edit"intermingled declarations and code: variable declaration is no longer restricted to file scope or the start of a compound statement (block)"
Isn't the term "variable declaration" not contradictory with what's explained in http://en.wikipedia.org/wiki/Declaration_(computer_programming? — Preceding unsigned comment added by 210.233.52.96 (talk) 04:30, 15 August 2011 (UTC)
C99 floating point support
editAs IEEE 754 support was a major feature of C99 (and C11) I have added an annotated example showing some of the major features supporting IEEE 754 (this example builds under gcc except they use a non-standard __FLT_EVAL_METHOD__ instead of FLT_EVAL_METHOD (also gcc support for the IEEE 754 #pragmas is currently very buggy ). Brianbjparker (talk) 04:34, 25 February 2012 (UTC)
- The fact that GCC uses __FLT_EVAL_METHOD__ and not FLT_EVAL_METHOD is a feature: FLT_EVAL_METHOD must not be defined until a #include <float.h>; so <float.h> will typically have: #define FLT_EVAL_METHOD __FLT_EVAL_METHOD__
- BTW, I don't think that the Wikipedia article is correct about FLT_EVAL_METHOD. See discussion starting at: https://sourceware.org/bugzilla/show_bug.cgi?id=6981#c6
- Vincent Lefèvre (talk) 00:49, 8 February 2014 (UTC)
External links modified
editHello fellow Wikipedians,
I have just added archive links to one external link on C99. Please take a moment to review my edit. You may add {{cbignore}}
after the link to keep me from modifying it, if I keep adding bad data, but formatting bugs should be reported instead. Alternatively, you can add {{nobots|deny=InternetArchiveBot}}
to keep me off the page altogether, but should be used as a last resort. I made the following changes:
- Attempted to fix sourcing for http://openwatcom.org/index.php/C99_Compliance
When you have finished reviewing my changes, please set the checked parameter below to true or failed to let others know (documentation at {{Sourcecheck}}
).
An editor has reviewed this edit and fixed any errors that were found.
- If you have discovered URLs which were erroneously considered dead by the bot, you can report them with this tool.
- If you found an error with any archives or the URLs themselves, you can fix them with this tool.
Cheers.—cyberbot IITalk to my owner:Online 05:10, 28 March 2016 (UTC)
A Commons file used on this page or its Wikidata item has been nominated for speedy deletion
editThe following Wikimedia Commons file used on this page or its Wikidata item has been nominated for speedy deletion:
You can see the reason for deletion at the file description page linked above. —Community Tech bot (talk) 19:09, 18 August 2022 (UTC)