I've spent hours scouring the internet for help. I'm very much a beginner at     pointer use, and I've already come up against a wall: I keep getting the error Segmentation fault (core dumped). I'm trying to make a simple version of strncpy() using pointers:
int main(int argc, char *argv[]) {
   char *x = "hello";                   /* string 1 */
   char *y = "world";                   /* string 2 */
   int n = 3;                           /* number of characters to copy */
   for (int i=0; i<=n; i++) {
      if(i<n) {
         *x++ = *y++;                   /* equivalent of x[i] = y[i] ? */
         printf("%s\n", x);             /* just so I can see if something goes wrong */
      } else {
         *x++ = '\0';                   /* to mark the end of the string */
      }
   }
}
(Edit: I initialized x and y, but still got the same fault.)
While on the quest to figure out what part of this was wrong, I tried another simple pointer thing:
int main(int argc, char *argv[]) {
   char *s;
   char *t;
   int n;                               /* just initilaizing everything I need */
   printf("Enter the string: ");
   scanf("%s", s);                      /* to scan in some phrase */
   printf("%s", s);                     /* to echo it back to me */
}
And lo and behold, I got another Segmentation fault (core dumped)! It let me scan in "hello", but replied with the fault. This code is so simple. What's wrong with my pointer use here?
 
     
    