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
[edit]The 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
[edit]I 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
[edit]MinGW?
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
[edit]The "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
[edit]there 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
[edit]The 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
[edit]I 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
[edit]As 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
[edit]Hello 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
[edit]The 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)
- C-Class Computing articles
- Mid-importance Computing articles
- C-Class software articles
- Mid-importance software articles
- C-Class software articles of Mid-importance
- All Software articles
- C-Class Computer science articles
- Mid-importance Computer science articles
- All Computing articles
- WikiProject Computer science articles
- C-Class C/C++ articles
- High-importance C/C++ articles
- C articles
- WikiProject C/C++ articles