C言語の基礎「文字列へのポインタ」

スポンサーリンク
C言語

これまで、文字列をchar型の配列に格納する方法を見てきた。
C言語の基礎(文字列の基本)

文字列は、文字の配列である。そのため、文字列を扱うということは、配列を扱うことになる。
文字列へのポインタは、配列へのポインタである

ここでは、その確認をかねて、文字列へのポインタを扱う具体例をみてみる。

#include <stdio.h>

int main(void)
{
    char str[] = "ABC";
    char *s = str;
    
    s[0] = 'X';
    s[1] = 'Y';
	printf("%s",str);
	return 0;
}

実行結果

XYC

変数sはchar型のポインタで、char型の値のアドレスを格納できる。

 char *s = str;

のように、配列の変数名だけを記述した場合、その先頭の要素のアドレスを表す
すると、s[0]、s[1]、s[2]で、それぞれ、str[0]、str[1]、str[2]を参照できる。

s[0]とs[1]に文字を代入しているが、これは、strが表す文字列の先頭と2番目の文字を変更している。

参考)「C言語 新版 ゼロからはじめるプログラミング」 三谷 純 (著)‎ 翔泳社、
「新・明解C言語 入門編 第2版 」柴田 望洋 (著) SBクリエイティブ

コメント

タイトルとURLをコピーしました