#Definition of parameterless function in C language
If the function does not receive data passed by the user, it can be defined without parameters. As shown below:
dataType functionName(){ //body }
dataType is the return value type, which can be any data type in C language, such as int, float, char, etc.
functionName is the function name, which is a type of identifier. The naming rules are the same as identifiers. The parentheses ( ) after the function name cannot be missing.
body is the function body, which is the code that the function needs to execute and is the main part of the function. Even if there is only one statement, the function body must be surrounded by { }.
If there is a return value, use the return statement in the function body to return. The type of data returned must be the same as dataType.
For example, define a function to calculate the result of adding from 1 to 100:
#include <stdio.h> int sum(){ int i, sum=0; for(i=1; i<=100; i++){ sum+=i; } return sum; } int main(){ int a = sum(); printf("The sum is %d\n", a); return 0; }
Running result:
The sum is 5050
Function cannot be nested definition, main is also a Function definition, so sum should be placed outside main. Functions must be defined first and then used, so sum must be placed before main.
Note: main is a function definition, not a function call. When the executable file is loaded into the memory, the system starts execution from the main function, that is, the system will call the main function we defined.
No return value function
Some functions do not need to return a value, or the return value type is uncertain (rare), then you can Expressed by void, for example:
void hello(){ printf ("Hello,world \n"); //没有返回值就不需要 return 语句 }
void is a keyword in C language, which means "empty type" or "no type". In most cases, it means there is no return statement.
Definition of parameterized functions in C language
If the function needs to receive data passed by the user, then it must bring parameters when defining it. As shown below:
dataType functionName( dataType1 param1, dataType2 param2 ... ){ //body }
dataType1 param1, dataType2 param2 ... is the parameter list. A function can have only one parameter or multiple parameters, separated by . Parameters are essentially variables, and the type and name must be specified when defining. Compared with the definition of a parameterless function, the definition of a parameterized function only has one more parameter list.
The data is passed to the inside of the function through parameters for processing. After the processing is completed, the return value is notified to the outside of the function.
Calculate the result of adding from m to n:
#include <stdio.h> int sum(int m, int n){ int i, sum=0; for(i=m; i<=n; i++){ sum+=i; } return sum; } int main(){ int begin = 5, end = 86; int result = sum(begin, end); printf("The sum from %d to %d is %d\n", begin, end, result); return 0; }
Running result:
The sum from 5 to 86 is 3731
When sum() is defined, the values of parameters m and n are unknown ; when calling sum(), pass the values of begin and end to m and n respectively. This is the same process as assigning values to variables. It is equivalent to:
m = begin; n = end;
Recommended tutorial: c language tutorial
The above is the detailed content of c language custom function. For more information, please follow other related articles on the PHP Chinese website!