Why does this program segfault

Posted by Leda on Stack Overflow See other posts from Stack Overflow or by Leda
Published on 2010-05-13T20:31:57Z Indexed on 2010/05/13 20:34 UTC
Read the original article Hit count: 145

Filed under:
|
|
|

Upon compiling and running this small program to reverse a string, I get a Segmentation Fault before any output occurs. Forgive me if this is an obvious question, I'm still very new to C.

#include <stdio.h>

int reverse(char string[], int length); 

int main() {
char string[] = "reversed";

  printf("String at start of main = %s", string);
  reverse(string, sizeof(string));
  printf("%s\n", string);

return 0;

}

// Reverse string 
int reverse(char string[], int length) {
 int i;
 char reversed[] = {};
 int temp;

 for(i = 0; i < length; ++i) {
 temp = string[i];
 reversed[length - i] = temp;

 }
 return 0; 
}

© Stack Overflow or respective owner

Related posts about segmentation-fault

Related posts about c