Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Three star programming

Name: Anonymous 2015-07-07 1:58

Hey guys, I found this gem in Reddit. This code will reverse an array in place with pointers.
http://www.reddit.com/r/programming/comments/cihh7/three_star_programmer/c0sug3o

#include <stdio.h>

void reverse(int ****, size_t);
void swap(int ****, int ****);

int main() {
int arr[]={1, 2, 3, 4};
int *p = arr;
int **pp = &p;
int ***ppp = &pp;
int ****pppp = &ppp;

reverse(pppp, 4);

for (int i = 0; i < 4; i++) {
printf("%d\n", *(***pppp + i));
}
}

void reverse(int ****pppp, size_t size) {
int *s = ***pppp;
int **ps = &s;
int ***pps = &ps;
int ****ppps = &pps;

int *e = (***pppp + size - 1);
int **pe = &e;
int ***ppe = &pe;
int ****pppe = &ppe;

while (***ppps < ***pppe) {
swap(ppps, pppe);
(***ppps)++;
(***pppe)--;
}
}

inline void swap(int ****x, int ****y) {
const int temp = ****x;
****x = ****y;
****y = temp;
}

Name: Anonymous 2015-07-07 3:58

I found this gem in Reddit.
KEEP IT THERE

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List