指针函数和函数指针
指针函数
//
// main.c
// 指针函数
//
// Created by admin on 16/3/31.
// Copyright © 2016年 jin. All rights reserved.
//
#include <stdio.h>
#include <stdlib.h>
/**
指针函数:返回值为指针的函数
*/
char * test1()
{
return "Hello world!";
}
char * test2()
{
/**
int int1 = 3215156;
int * int2 = &int1;
return int2;
*/
// char *string = "aswdasd";
char string[] = "aswdasd";
return string;
}
int main(int argc, const char * argv[]) {
char *stringA = "sadsdasd";
char *string = test1();
printf("%s\n",test1());
printf("%s\n",stringA);
char stringB[] = "sadsdasd";
char *stringC = stringB;
printf("%s\n",stringC);
char stringD = 1;
char *stringE = &stringD;
printf("%i\n",*stringE);
printf("%s\n",test2());
return 0;
}
函数指针
//
// main.c
// 函数指针
//
// Created by admin on 16/3/31.
// Copyright © 2016年 jin. All rights reserved.
//
#include <stdio.h>
void test1()
{
printf("哈哈哈\n");
}
int test2()
{
return 888;
}
int test3(int num1,int num2)
{
return num1 + num2;
}
int main(int argc, const char * argv[]) {
/**
函数指针
*/
void (*test1Pointer)();
test1Pointer = test1;
test1Pointer();
int (*test2Pointer)();
test2Pointer = test2;
printf("%i\n",test2Pointer());
int (*test3Pointer)(int num1,int num2);
test3Pointer = test3;
printf("%i\n",test3Pointer(1,2));
return 0;
}