Hello,

I want to reverse array without using indexing in the array. Here is the code developed. Please let me know, if anybody can suggest better idea.

Code:
# include <stdio.h>

void print_rev(void);
void print_char(char *pointer);

char array[]={'A','B','C','D','E','F','G','H','I','J','K'};
int sizeofarray;

main()
{
	print_rev();
}

void print_rev(void)
{
	char *cPointer = array;
	sizeofarray = sizeof(array)/sizeof(array[0]);
	print_char(cPointer);
	printf("%c",*cPointer);
}

void print_char(char *pointer)
{
	if (sizeofarray--)
	{
		pointer = pointer +1;
		print_char(pointer);
	}
	printf("%c",*pointer);
}
Following version of print_char does not work. Pointer not advancing.. Any idea.

Code:
void print_char(char *pointer)
{
	if (sizeofarray--)
	      print_char(pointer++);
	printf("%c",*pointer);
}