私は時間を費やして助けを求めました。私はポインターの使い方で非常に初心者です。私はすでに壁に立ち向かっています。私はエラーSegmentation fault (core dumped)
を得続けます。 (:私は、xとyを初期化し、それでも同じ障害を持って編集。)基本的なポインタの使い方:セグメンテーションフォールト、コアダンプ
ながら図のようにクエストに
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 */
}
}
}
:私は、ポインタを使用して)はstrncpy(の簡易版を作成しようとしていますこれの一部が間違っていたものを、私は別の単純なポインタの事を試みた:
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 */
}
とLoを見よ、私は別のSegmentation fault (core dumped)
を持って!それは "hello
"でスキャンすることができましたが、エラーで返答しました。このコードはとても簡単です。ここで私のポインタの使用に何が問題なのですか?
'charが*'文字列、メモリへのポインタだけのためのメモリを割り当てません。 – bejado
アドバイス:先に進む前にCのコンセプトに関する詳細なバックグラウンドを読んでください –
ありがとうございました! @giorgimoniava私は何時間も読んできた、残念ながら、笑!私はしようとしています( –