今日の人気記事

  1. while文 - 繰り返し処理
  2. 浮動小数点数型(float型 double型)の最大値と最小値 - float.h
  3. テキストファイルの読み込みと出力
  4. 文字列関数 - string.h
  5. do 〜 while文 - 繰り返し処理

文字列 - 日本語の取り扱い方法

当ページのリンクには広告が含まれています。

スポンサーリンク

前回は「」を紹介しました。

ここではC言語での日本語の取り扱い方法をみていきます。

日本語の取り扱い

まずは次のプログラムをみてみましょう。

#include <stdio.h>

int main(void)
{
  char mojiretu[9]= "日本語のテストだよ";

  printf("%s\n", mojiretu);

  return 0;
}

「日本語のテストだよ」という9文字の文字列を配列変数「mojiretu[9]」に代入していますが……

エラーが表示されコンパイルできません!

これは「漢字」「ひらがな」「カタカタ」といった日本語が「マルチバイト文字」なのが原因です。

マルチバイト文字は「半角英数」の文字列とは異なり配列の多くの場所(要素)を使用するため、格納する場所が足りなくなりエラーが表示されます。

こんなときは次のように配列変数を定義しましょう。

char mojiretu[]= "日本語のテストだよ";

これでOKです。

次のプログラムをコンパイル・実行してみましょう。

#include <stdio.h>

int main(void)
{
  char mojiretu[]= "日本語のテストだよ";

  printf("%s\n", mojiretu);

  return 0;
}

このプログラムを実行すると

日本語のテストだよ

このように日本語の文字列が出力されます。

次は「キーボードから入力した文字/文字列を配列に代入する方法」をみていきます。

基本構文 の人気記事

  1. while文 - 繰り返し処理
  2. 配列の要素を出力(表示)する
  3. printf関数の変換指定子
  4. 条件演算子(3項演算子)「? :」
  5. continue文 - ループをスキップ
  6. プログラムの書式 - プログラムの基本
  7. do 〜 while文 - 繰り返し処理
  8. 文字 - char型
  9. 文字列 - 日本語の取り扱い方法
  10. 浮動小数点数型(float型 double型)の最大値と最小値 - float.h

関連記事(一部広告含む)