I am trying to reverse a string using command line argument but I don't know why am I getting segmentation fault for this .
#include <stdio.h>
#include <string.h>
#include <assert.h>
int main(int argc, char *argv[]) {
char *str = argv[1];
char *rev;
int i, j, k;
for (i = 0; str[i] != '\0'; i++); {
k = i - 1;
}
for (j = 0; j <= i - 1; j++) {
rev[j] = str[k];
k--;
}
printf("The reverse string is %s\n", rev);
return 0;
}