Académique Documents
Professionnel Documents
Culture Documents
1. 1. 1. FUNCTON
Functions provides modularity to the software.
#include <stdio.h>
The value of k is 30
#include <stdio.h>
main(){
int i=3;
int j = 6;
int k = f1(i,j);
printf("%d",k);
}
9
1. 3. 1. FUNCTON PROTOTYPE
#include <stdio.h>
int main(void)
{
int number = 10;
int result = 0;
result = change(number);
printf("\nIn main, result = %d\tnumber = %d", result, number);
return 0;
}
#include <stdio.h>
f1(int *k);
main ( ){
int i;
i = 0;
printf (" The value of i before call %d \n", i);
f1 (&i);
printf (" The value of i after call %d \n", i);
}
f1(int *k)
{
*k = *k + 10;
}
#include <stdio.h>
main ( ){
int i;
i = 0;
printf (" The value of i before call %d \n", i);
f1 (&i);
printf (" The value of i after call %d \n", i);
}
#include<stdio.h>
f1 (void)
{
printf ("f1-1 \n");
f2 ( );
printf ("f1-2 \n");
}
f2 ()
{
printf ("f2 \n");
}
main ( )
{
printf ("1 \n");
f1 ( );
printf ("2 \n");
}
1
f1-1
f2
f1-2
2
1. 5. FUNCTON PARAMETER
1. 5. 1. PARAMETER PASSNG
1. 5. 2. CALL BY REFERENCE
1. 5. 3. PASS VARABLES TO FUNCTON
1. 5. 4. USE PONTER AS FUNCTON PARAMETER
1. 5. 5. CUBE A VARABLE USNG CALL-BY-VALUE
1. 5. 6. CUBE A VARABLE USNG CALL-BY-REFERENCE WTH A PONTER
ARGUMENT
1 5. 1. PARAMETER PASSNG
Information can be passed into function.
#include<stdio.h>
main ( )
{
int i;
i = 0;
printf (" The value of i before call %d \n", i);
f1 (i);
printf (" The value of i after call %d \n", i);
}
f1 (int k)
{
k = k + 10;
}
1. 5. 2. CALL BY REFERENCE
#include<stdio.h>
main ( )
{
int i;
i = 0;
printf (" The value of i before call %d \n", i);
f1 (&i);
printf (" The value of i after call %d \n", i);
}
f1(int *k)
{
*k = *k + 10;
}
#include <stdio.h>
int main(void)
{
float value1 = 1.0F;
float value2 = 2.0F;
float value3 = 0.0F;
#include <stdio.h>
int main(void)
{
int number = 10;
int *pnumber = &number;
int result = 0;
result = change(pnumber);
printf("\nIn main, result = %d\tnumber = %d", result, number);
return 0;
}
return *pnumber;
}
#include <stdio.h>
int main()
{
int number = 5;
return 0;
#include <stdio.h>
int main()
{
int number = 5;
cubeByReference( &number );
return 0;
1. 6. FUNCTON PONTER
1. 6. 1. PONTNG TO FUNCTONS
1. 6. 2. ARRAYS OF PONTERS TO FUNCTONS
1. 6. 3. USNG ARRAY OF PONTERS TO FUNCTONS N ONE STATEMENT
1. 6. 4. PASSNG A PONTER OF A FUNCTON TO ANOTHER FUNCTON
1. 6. 1. PONTNG TO FUNCTONS
#include <stdio.h>
int main(void)
{
int a = 10;
int b = 5;
int result = 0;
int (*pfun)(int, int); /* Function pointer declaration */
pfun = sum;
result = pfun(a, b); /* Call sum() through pointer */
printf("\npfun = sum result = %d", result);
pfun = product;
result = pfun(a, b); /* Call product() through pointer */
printf("\npfun = product result = %d", result);
pfun = difference;
result = pfun(a, b); /* Call difference() through pointer */
printf("\npfun = difference result = %d\n", result);
return 0;
}
#include <stdio.h>
int main(void){
int a = 10;
int b = 5;
int result = 0;
int (*pfun[3])(int, int); /* Function pointer array declaration */
/* Initialize pointers */
pfun[0] = sum;
pfun[1] = product;
pfun[2] = difference;
int i;
for(i = 0 ; i < 3 ; i++)
{
result = pfun[i](a, b); /* Call the function through a pointer */
printf("\nresult = %d", result); /* Display the result */
}
return 0;
}
result = 15
result = 50
result = 5
#include <stdio.h>
int main(void){
int a = 10;
int b = 5;
int result = 0;
int (*pfun[3])(int, int); /* Function pointer array declaration */
/* Initialize pointers */
pfun[0] = sum;
pfun[1] = product;
pfun[2] = difference;
return 0;
}
#include <stdio.h>
int main(void){
int a = 10;
int b = 5;
int result = 0;
int (*pf)(int, int) = sum; /* Pointer to sum function */
result = 15
result = 50
result = 5
1. 7. FUNCTON RETURN
1. 7. 1. IF THE FUNCTON DOES NOT RETURN ANY VALUE
1. 7. 2. RETURN VALUE AS PONTER
1. 7. 3. FUNCTONS THAT RETURN VALUE