アイデア分析
補足的な知識のポイント
1. C 言語では、1 次元配列の配列名は実際には配列の最初の要素へのポインタです。
2. ポインタ p がすでに文字列を指している場合、その文字列が終了したかどうかの判定には一般的に while(*p!='\0') の方法が使用されます。
印刷出力 arr[30]="hello world"; を例として説明します。
出力文字列を 3 つの方法で出力します。
タイプ 1: 文字列全体をそのまま直接出力します。
タイプ 2: ポインタを使用して文字列全体を全体として出力します。
タイプ 3: ポインターを使用して、文字列全体を 1 文字ずつ出力します。
タイプ 4: string.h ヘッダー ファイルのナレッジ ポイントを使用して、文字列全体を全体として出力します。
最初のメソッドのコードは次のとおりです。
#include <stdio.h>
void main(){
char arr[30]="hello world";
printf("%s",arr);
}
最初のメソッド コードの実行結果は次のとおりです。
2 番目のメソッドのコードは次のとおりです。
#include <stdio.h>
void main(){
char arr[30]="hello world";//初始化字符串
char *p;//定义一个指针p
p=arr;//字符串的地址赋给p
printf("%s",p);
}
2 番目のメソッド コード操作の結果は次のとおりです。
3 番目のメソッドのコードは次のとおりです。
#include <stdio.h>
void main(){
char arr[30]="hello world";//初始化字符串
char *p;//定义一个指针p
p=arr;//字符串的地址赋给p
while(*p!='\0'){
printf("%c",*p++);//按单个字符打印输出整个字符串。
}
}
3 番目のメソッド コード操作の結果は次のとおりです。
4 番目のメソッドのコードは次のとおりです。
#include <stdio.h>
#include <string.h>
void main( ){
char arr[30];//定义一个字符串数组
printf("请输入一个字符串\n");
gets(arr);//从键盘中输入字符串,给字符串数组赋值
printf("打印输出字符串\n");
puts(arr);//整体打印输出字符串数组
}
4 番目のメソッドのコード操作の結果は次のとおりです。