複数の文字を入力するための C 言語の方法は何ですか?

C言語では、scanf関数を使用して複数の文字を入力できます。 scanf関数は、指定された形式に基づいて標準入力ストリームからデータを読み取るフォーマット入力関数です。

以下は、複数の文字を入力する方法を示すサンプルコードです。

#include <stdio.h>

int main() {
    char str[100];  //用于存储输入的字符
    printf("请输入多个字符:");
    scanf("%s", str);  //使用%s格式化字符串来读取多个字符
    printf("您输入的字符是:%s\n", str);
    
    return 0;
}

コードの中で、最初に文字配列strを宣言し、入力された文字を格納するために使用しています。次に、printf関数を使ってユーザーに複数の文字を入力するよう促します。その後、scanf関数と%sフォーマット文字列を使用して複数の文字を読み取り、それらをstr配列に保存します。最後に、printf関数を使ってユーザーが入力した文字を出力します。

%s形式の文字列を使用するときには、scanf関数は自動的にスペースや改行文字を認識して入力の終了位置を決定します。したがって、スペースで区切られた複数の文字を入力したい場合は、scanf関数の代わりにfgets関数を使用できます。

#include <stdio.h>

int main() {
    char str[100];  //用于存储输入的字符
    printf("请输入多个字符:");
    fgets(str, sizeof(str), stdin);  //使用fgets函数读取多个字符
    printf("您输入的字符是:%s\n", str);
    
    return 0;
}

上記のコードでは、scanf関数の代わりにfgets関数を使用して、スペースで区切られた複数の文字を読み取ります。fgets関数は改行文字が現れるまで文字を読み取り続け、その結果をstr配列に格納します。読み取る最大文字数を指定するためにsizeof関数も使用する必要があることに注意してください。これによりバッファオーバーフローを防ぐことができます。

bannerAds