The C# Language
This section provides a quick tour of the C# language.
|
C# Language Specifications
C# Language Specification 2.0, March 2005 Draft This document describes the new features of the C# language, including Generics, Anonymous Methods, and Partial Types. Please note that this is a draft document intended to give you a preview of the "Whidbey" release of the C# language. |
C# Language Working Draft 2.7, June 2004 (PDF) In January, 2003, Ecma Technical Committee TC39, Task Group 2 (TG2) started work on a revision of the C# standard. When TG2 has completed this specification, it will be submitted to the Ecma General Assembly (GA) for consideration as an Ecma standard. Once it has been adopted as such, the specification will be submitted to ISO/IEC JTC 1 via the latter's Fast-Track process. The first ISO/IEC standard for C# was published in April, 2003, and is known formally as ISO/IEC 23270 (C#). An equivalent specification was adopted as a 2nd edition standard by Ecma at its December, 2002, General Assembly. Posted here is a snapshot of TG2's work to date. TG2 is providing this working document to the public for informational purposes only. The contents are subject to change. To participate in the standardization process, contact your organization's Ecma representative. If your company does not currently participate in Ecma and wishes to do so, please contact Ecma (http://www.ecma-international.org) directly. |
C# Language Specification 1.2 This document describes the C# language in detail and is intended to be correct for the 7.1 version of the C# compiler. |
C# Language Specification 1.0 This document describes the C# 1.0 language in detail. The ISO/IEC 32270:2003 and ECMA-334 (2nd Edition - December 2002) C# standards are based on the 1.0 version of the C# specification. |
C# Language References
C# Language Specification Describes the syntax, semantics, and design of the C# programming language |
C# Grammar Contains summaries of the lexical and syntactic grammars of the C# programming language |
C# Keywords Keywords are predefined reserved identifiers that have special meanings to the compiler. They cannot be used as identifiers in your program unless they include @ as a prefix. For example, @if is a legal identifier but if is not because it is a keyword. |
C# Operators C# provides a large set of operators, which are symbols that specify which operations to perform in an expression. C# predefines the usual arithmetic and logical operators, as well as a variety of others. In addition, many operators can be overloaded by the user, thus changing their meaning when applied to a user-defined type. |
C# Attributes Get an introduction to attributes and descriptions of the AttributeUsage, Conditional and the Obsolete reserved attributes. |
C# Preprocessor Directives Learn about C#'s conditional compilation directives. |
C# Language Features Learn about arrays, Main method, properties, indexers, passing parameters, and other language features |
C# Language Tutorials The C# tutorials provide an overview of the basics of the language and identify important language features. Each tutorial includes one or more sample programs. The tutorials discuss the sample code plus provide additional background information. They also link to the corresponding sample abstract topics, where you can download and run the sample programs. |