Home >Backend Development >C#.Net Tutorial >C# Functions
C# functions are the essential parts of the C# program that can consist of several elements, such as the function name that is used as the function’s reference, return types of the data operated in the functions, the logical body of the function, parameters that can be passed as arguments for the function, and the Access Specifier for defining the accessibility of the function inside the program. The different functions that can be integrated into a C# program are a combination of functions with or without parameters, which can or cannot have the return values, depending on the requirement provided.
There are several components in functions –
C# Function Syntax
<access-specifier><return-type>FunctionName(<parameters>) { // function body // return statement }
Return statements, parameters, and Access-specifier are optional in the above syntax.
|
Syntax(Function) | ||||||||||
With parameters and with return values |
Declaration: int display ( int );
Function call: display ( value );
Function definition: int display(int value) { statements; return value; } |
||||||||||
With parameters and without return values |
Declaration: void display ( int );
Call: display (value);
Function definition: void display ( int value) { statements; } |
||||||||||
Without parameters and without return values |
Declaration: void display ();
Call: display ();
Definition: void display () { statements; } |
||||||||||
Without parameters and with return values |
Declaration: int display ( );
Call: display ( );
Definition: int display ( ) { statements; return value; } |
If a function’s return value is “void,” it cannot return any values to the calling function.
Note: If the return value of the function, such as “int, double, float, string, etc.” is other than void, then it can return values to the calling function.We specified the function with no parameter and no return type, a function that does not return any values here, as void type as a return type value. In this program, any values should not be passed to the function call Display(), and also, there are no values that are returned from this function call to the main function.
Let’s see the example with a function build without a return type and parameter,
Example:
Code:
using System; namespace FunctionSamples { class Program_A { // User defined function without return type and parameter public void Display() { Console.WriteLine("Non Parameterized Function"); // No return statement } static void Main(string[] args) // Main Program { Program_A program = new Program_A (); // to create a new Object program.Display(); // Call the Function } } }
Output:
In this program, a string is passed as a parameter to the function. This function’s return type is “void,” and no values can be returned. The value of the string is manipulated and displayed inside the function itself.
Example:
Code:
using System; namespace FunctionSample { class Program_B { public void Display(string value) // User defined function without return type { Console.WriteLine("Hello " + value); // No return statement } static void Main(string[] args) // Main function { Program_B program = new Program_B(); // Creating Objec program.Display("Welcome to C# Functions"); // Calling Function } } }
Output:
In this program, a string is passed as a parameter to the function. The return type of this function is “string,” and the return value of the string can be returned from the function. The value of the string is manipulated and displayed inside the function itself.
Example
Code:
using System; namespace FunctionsSample { class Program_C { // User defined function public string Show(string message) { Console.WriteLine("Inside the Show Function Call"); return message; } // Main function static void Main(string[] args) { Program_C program = new Program_C(); string message = program.Show("C# Functions"); Console.WriteLine("Hello "+message); } } }
Output:
In this program, arguments or parameters will not be passed to the function “calculate” but to the main function; the values are returned from this calculate () function call. The variables a and b values are calculated in the function called “calculate,” and in the main function, the sum of these values is returned as a result.
Example:
Code:
using System; namespace FunctionsSample { class Program_D { public void calculate() { int a = 50, b = 80, sum; sum = a + b; Console.WriteLine("Calculating the given to values: " +sum); } static void Main(string[] args) // Main function { Program_D addition =new Program_D(); addition.calculate(); } } }
Output:
When creating a method with arguments/parameters in c#, we must pass arguments/parameters to that specified method when calling our application’s function. We have several ways to pass parameters to the method; let’s see the parameters/arguments.
Parameters | Description |
Value Parameters | Value parameters are called the “input parameters.” Instead of the original parameters, the input parameters will pass a copy of the actual value; due to that, there will not be any cause or changes made to the parameter during the called method, and it will not affect on original values while the control passes to the caller function. |
Reference Parameters | Reference parameters are called the “input/output parameters.” The reference parameter will pass the reference memory of the original parameters. Thus, the changes/alteration made to the parameters in called method, while the control returns to the caller function, affects the actual values. |
Output Parameters |
It is an “output parameter” like the reference type parameters. The only difference is there is no need to initialize it before passing the data. |
In this article, we well-read the usage of the functions/ methods available in C# and learned the different C# functions. I hope this article has helped you understand the several functional aspects of C#.
The above is the detailed content of C# Functions. For more information, please follow other related articles on the PHP Chinese website!