segmentation fault with strcpy

c, segmentation-fault, strcpy

Solution

You haven't initialized `*str_new` so it is just copying `str_old` to some random address. You need to do either this:

char str_new[100];

or

char * str = (char *) malloc(100);

You will have to `#include <stdlib.h>` if you haven't already when using the malloc function.

Problem

I am wondering why am I getting segmentation fault in the below code. ``` int main(void) { char str[100]="My name is Vutukuri"; char *str_old,*str_new; str_old=str; strcpy(str_new,str_old); puts(str_new); return 0; } ```

Original source

Related problems