求C语言指针,数组,函数这几个关键的地方能串通起来比较经典的代码例子!

来源:百度知道 编辑:UC知道 时间:2024/07/02 18:36:47
本人编程新人,在学习C语言的时候在指针,数组,函数,这几个比较关键的地方一直不能融会贯通,请前辈给几个在这几个地方都能串通起来的比较有代表性的代码例子,以供小弟揣摩.(特别是在指针方面的好例子)在下用的编译系统是VC6.0.

#include <stdio.h>

/* 用户定义函数 */
int sum_array(int *a, int n)
{
int i, sum = 0;
for(i = 0; i < n; ++i)
sum += a[i];
return sum;
}
/* 函数指针 */
typedef int (*function_point)(int *, int);

int main()
{
int i, j;
int a[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; /* 一维数组 */
int b[][5] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; /* 二维数组 */
int *pa = a; /* 指针 */
int (*pb)[5] = b; /* 指向数组的指针 */
for(i = 0; i < 10; ++i)
printf("%d ", *pa++);
printf("\n");
for(i = 0; i < 2; ++i)
{
for(j = 0; j < 5; ++j)
{
printf("%d %d ", b[i][j], pb[i][j]);
}
printf("\n");
}
printf("Sum = %d \n", sum_array(a, 10));
function_point funptr = sum_array; /* 定义函数指针 */
printf("sum = %d \n", funptr(a, 10)