C语言数组,指针小案例
/*
============================================================================
Name : hello.c
Author : liming
Version :
Copyright : Your copyright notice
Description : Hello World in C, Ansi-style
============================================================================
*/
#include <stdio.h>
#include <stdlib.h>
void fun(int m, char * (*p)[5])
{
int i = 0;
char ** buff = (char**)p;
char **tm = NULL;
for (i=0; i<m; i++)
{
tm = buff + i;
//printf("%s\n", *(buff+i));
printf("%s\n", *(tm));
}
}
int main(void)
{
char * buf[]= {"aa", "bb", "cc", "dd", "ff"};
char * ptr = NULL;
char a = 9;
ptr = &a;
ptr++;
ptr++;
ptr++;
puts("!!!Hello World!!!"); /* prints !!!Hello World!!! */
fun(sizeof(buf)/4, &buf);
printf("sizeof(buf)/4 = %d\n", sizeof(buf) / sizeof(buf[0]) );
return 0;
}
!!!Hello World!!!
aa
bb
cc
dd
ff
sizeof(buf)/4 = 5
Terminated with return code 0
Press any key to continue ...