1)what is the difference between function declaration and function definition.

2)what is an inline function

1. Go to http://www.google.com

2. Type in inline function (or whatever search terms you need). Press Enter.

3. Read different search results until you find what you need.

4. Re-search with different search terms if you don't find all you need.

1) The difference between function declaration and function definition in programming is as follows:

- Function Declaration: It is a statement that tells the compiler about the existence of a function, its name, and the type of its return value (if any). It declares the function's name, parameters, and return type without providing the actual implementation of the function's code.

Example of a function declaration:
```cpp
int sum(int a, int b);
```
In this declaration, the function name is "sum", and it takes two integer parameters and returns an integer.

- Function Definition: It is a statement that provides the actual implementation of the function's code. It contains the detailed instructions about what the function does, including its logic or operations.

Example of a function definition:
```cpp
int sum(int a, int b) {
return a + b;
}
```
In this definition, the function name "sum" is followed by the code block enclosed in braces {}. This contains the actual instructions to add the two input parameters and return the result.

In summary, a function declaration only declares the function's parameters and return type, while a function definition provides the actual implementation of the function's code.

2) An inline function is a feature provided by some programming languages, like C++ and C, that allows the compiler to insert the code of a function directly at the calling point instead of performing a normal function call. This is done to optimize the code's execution time by avoiding the overhead of a function call.

To declare a function as inline, the keyword "inline" is typically used before the function's return type in its declaration or definition.

Example of an inline function:
```cpp
inline int multiply(int a, int b) {
return a * b;
}
```
In this example, the function "multiply" is defined as inline. When called, the compiler will replace the function call with the actual code of the function, rather than generating a separate function call.

Inline functions are generally used for short and frequently called functions, as they can improve the performance of the code by reducing the function call overhead. However, the decision of whether to inline a function is ultimately up to the compiler, which may optimize the code differently based on factors like code size and performance.

1) The difference between function declaration and function definition lies in the way they are used in programming.

A function declaration is a statement that tells the compiler about the existence of a function. It provides details about the function name, return type, and the arguments it accepts, but it doesn't contain the actual implementation of the function. This allows other parts of the code to know that the function exists and how to use it, without needing to know the specific details of how it works.

Here is an example of a function declaration:
```
int add(int a, int b);
```

A function definition, on the other hand, contains the actual implementation of a function. It provides the body of the function, which contains the code that is executed when the function is called. The definition includes the function name, return type, arguments, and the actual code to be executed.

Here is an example of a function definition:
```
int add(int a, int b) {
return a + b;
}
```

2) An inline function is a function in programming that is expanded by the compiler at the point of calling, instead of being executed as a separate function call. It is a way to optimize code execution by reducing the overhead of function calls.

To declare an inline function, the `inline` keyword is used. When the function is called, the compiler replaces the function call with the actual body of the function, similar to a macro. The advantage of inline functions over macros is that they retain the type-checking and scoping features of regular function calls.

Here is an example of an inline function declaration and definition:
```
inline int multiply(int a, int b) {
return a * b;
}
```

When the function is called, instead of executing a function call, the compiler replaces the call with the body of the function:
```
int result = multiply(5, 3); // replaced with int result = 5 * 3;
```

It is important to note that the `inline` keyword suggests to the compiler that it may or may not inline the function, as it ultimately decides based on various factors such as the size of the function, complexity, compiler settings, etc.