Jump to content
Wikibooks The Free Textbook Project

C# Programming/Syntax

From Wikibooks, open books for an open world
The latest reviewed version was checked on 11 May 2022. There are 2 pending changes awaiting review.

C# syntax looks quite similar to the syntax of Java because both inherit much of their syntax from C and C++. The object-oriented nature of C# requires the high-level structure of a C# program to be defined in terms of classes, whose detailed behaviors are defined by their statements.

Statements

[edit | edit source ]

The basic unit of execution in a C# program is the statement. A statement can declare a variable, define an expression, perform a simple action by calling a method, control the flow of execution of other statements, create an object, or assign a value to a variable, property, or field. Statements are usually terminated by a semicolon.

Statements can follow in sequence or be grouped in brace-enclosed statement blocks.

Examples:

intsampleVariable;// declaring a variable
sampleVariable=5;// assigning a value
Method();// calling an instance method
SampleClasssampleObject=newSampleClass();// creating a new instance of a class
sampleObject.ObjectMethod();// calling a member function of an object
// executing a "for" loop with an embedded "if" statement 
for(inti=0;i<upperLimit;i++)
{
if(SampleClass.SampleStaticMethodReturningBoolean(i))
{
sum+=sampleObject.SampleMethodReturningInteger(i);
}
}

Statement blocks

[edit | edit source ]

A series of statements surrounded by curly braces form a block of code. Among other purposes, code blocks serve to limit scope, or the range in which a variable can be used. A variable is only accessible in the block in which it is defined. Code blocks can be nested and often appear as the bodies of methods.

privatevoidMyMethod(intintegerValue)
{// This block of code is the body of "MyMethod()"
// The 'integerValue' integer parameter is accessible to everything in the method
intmethodLevelVariable;// This variable is accessible to everything in the method
if(integerValue==2)
{
// methodLevelVariable is still accessible here 

intlimitedVariable;// This variable is only accessible to code in the, if block
DoSomeWork(limitedVariable);
}

// limitedVariable is no longer accessible here

}// Here ends the code block for the body of "MyMethod()".

Comments

[edit | edit source ]

Comments allow inline documentation of source code. The C# compiler ignores comments. These styles of comments are allowed in C#:

Single-line comments
The // character sequence marks the following text as a single-line comment. Single-line comments, as one would expect, end at the first end-of-line following the // comment marker.
Multiple-line comments
Comments can span multiple lines by using the multiple-line comment style. Such comments start with /* and end with */. The text between those multi-line comment markers is the comment.
// This style of a comment is restricted to one line.
/* 
 This is another style of a comment.
 It allows multiple lines.
*/
XML Documentation-line comments
These comments are used to generate XML documentation. Single-line and multiple-line styles can be used. The single-line style, where each line of the comment begins with ///, is more common than the multiple-line style delimited by /** and */.
/// <summary> documentation here </summary>
/// <remarks>
/// This uses single-line style XML Documentation comments.
/// </remarks>
/** 
 * <summary> documentation here </summary>
 * <remarks>
 * This uses multiple-line style XML Documentation comments.
 * </remarks>
 */

Case sensitivity

[edit | edit source ]

C# is case-sensitive, including its variable and method names.

The variables myInteger and MyInteger of type int below are distinct because C# is case-sensitive:

intmyInteger=3;
intMyInteger=5;

For example, C# defines a class Console to handle most operations with the console window. Writing the following code would result in a compiler error unless an object named console had been previously defined.

// Compiler error!
console.writeline("Hello");

The following corrected code compiles as expected because it uses the correct case:

Console.WriteLine("Hello");

AltStyle によって変換されたページ (->オリジナル) /