Advanced Pointers
Out Parameter
An output parameter lets a function return a status and write a computed value.
Out Parameter
out_parameter.c
#include <stdio.h>
static int divide(int numerator, int denominator, int *result) {
if (denominator == 0) {
return 0;
}
*result = numerator / denominator;
return 1;
}
int main(void) {
int denominator = ;
int result = 0;
int ok = divide(20, denominator, &result);
printf("ok=%d result=%d\n", ok, result);
return 0;
}
#include <stdio.h>
static int divide(int numerator, int denominator, int *result) {
if (denominator == 0) {
return 0;
}
*result = numerator / denominator;
return 1;
}
int main(void) {
int denominator = ;
int result = 0;
int ok = divide(20, denominator, &result);
printf("ok=%d result=%d\n", ok, result);
return 0;
}
#include <stdio.h>
static int divide(int numerator, int denominator, int *result) {
if (denominator == 0) {
return 0;
}
*result = numerator / denominator;
return 1;
}
int main(void) {
int denominator = ;
int result = 0;
int ok = divide(20, denominator, &result);
printf("ok=%d result=%d\n", ok, result);
return 0;
}
status return
The function return value can say whether the operation succeeded.
output slot
A pointer argument gives the function a place to write the result.