ネットワークエンジニア系ブログ。健康、エンターテイメント、映画・ドラマ、本、キッズ系、FXまで!お役立ち情報を紹介!

GOISBLOG

C言語

【C言語】文字列を変数に代入する設定

更新日:

C言語は初期化時のときのみ、文字列の変数に値「=」を入れるルールとなっているようです。

例えば、変数に文字列を入れた後、別の文字列を新たに入れたいときは「strcpy」を使用します。


>>>>>>エンジニアおすすめサイト
⇒IT、WEB、プログラミングのキャリアアップを目指す方はオンラインで学べる
コードキャンプがおすすめです。

無料体験レッスンも受けることができますし、専門の講師がしっかりサポートもしてくれるので安心です。
しかも、初心者からこれからキャリアアップして転職を考えている方もしっかりとサポートしてくれます。
年収もアップするために次のステップに進みましょう!

C言語における文字列のしくみ

文字列を記述する際は""でくくります。
また、文字列を格納する変数のコマンドを作成する際は以下のように設定します。

char s[10];
sは変数名、[10]は文字の長さにNULL文字を一つ分入れた数値となります。

なので、[10]を設定した際は、9文字の文字列+NULL(\0)となります。

スポンサーリンク


設定例

実際に書かないとわかんないんで、プログラムを書いてみました。

# vim test.c

#include <stdio.h>
#include <string.h>

main()
{
        char s[10] = "Hello";
        printf("%s\n", s);
        strcpy(s, "Good bye");
        printf("%s\n", s);
}

コンパイル実施

# gcc test.c -o test

プログラム実行

# ./test
Hello
Good bye

ためしに文字列の範囲を超えた設定をすると以下のようにエラーを吐きます。

# ./test
Hello
Good byekkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
セグメンテーション違反です (コアダンプ)

こんな感じです。

今日もなんとなく、わかった気がする自分であります。


>>>>>> 今、IT業界でLinuxの資格は必須と言っていいほど重要になってきました。
リナックスアカデミーはITエンジニアとしての知識が学べ、卒業後の就職までサポートしてくれます。

将来のエンジニアを目指す方は無料資料があるので参考にしてください。


○エンジニアの道を目指すならこちらもおすすめです!
⇒ネットワークエンジニアへの技術手順書

⇒サーバーエンジニアへの構築手順書



この記事が気に入ったら
いいね!しよう

Twitter で



  • この記事を書いた人
  • 最新記事

ネットワークエンジニアとしてまた一児の父として仕事とブログ作成に奮闘中!
自分の身の回りにある興味、趣味をひたすらブログで書きまとめています!
私の子供も発達障害のこともあるので色々調べたことなどアップして少しはお役に立てたらと思っております!

-C言語
-,

Copyright© GOISBLOG , 2017 All Rights Reserved.