細部のC ++文字列

問題のC ++文字列

文字の文字列
の文字数に分解され、対応する文字の中に格納された配列に格納されています

char A[5] = {"H","e","l","l","o"};
//当想存Hello的时候在字符数组里会拆成一个个的字符生成,5为数组长度

あなたは、文字列を保持したい場合に使用することができます* char型の
文字列の文字*配列

char* A[3] = {"Hello","the", "same"};
/*当加上星号后,数组里存的不是Hello,the和same,而是这三个字符串
的第一个字符的地址,而这个字符串又是由字符数组组成的。因为在地址里
是连续的,所以能读取整个Hello,the,same,所以可以变相就变成了字
符串数组
*/

C ++入力文字の問題

%cを使用してのscanf入力文字、%sの、
%sの

char str[10];
scanf("%s",str);
printf("%s",str);

`入力してください

QAQ QAQ QAQ

ディスプレイ

QAQ

文字列の末尾にスペースがあるので

Gets_sやscanfとGETCHARの違いを議論

#define _CRT_SECURE_NO_WARNINGS 
#include<stdio.h>
int main()
{
	char a[10], b[10];
	char c, d;
	scanf("%s", a);
	printf("a中保存的字符串为:%s\n", a);

	c = getchar();
	printf("c中保存的字符为:%c ", c);
	//此行没有换行符检测是否接受了输入缓冲区的

	gets_s(b);
	printf("b中保存的字符串为:%s\n", b);

	d = getchar();
	printf("d中保存的字符为:%c", d);

	return 0;
}

ASDFはDFのようにして得られた入力結果を入力します

結論:
scanf関数は、スペースを識別したり、文字列の末尾として入力するか、タブ、およびスペースは入力バッファに残っている
、それは旅行のためですので、それがn \ scanfのスペースを受けた単一の文字を受け入れることができます)GETCHAR(
gets_s許容スペース、タブ、それを、識別は、エンド・フラグとして(\ n)を入力します。

sscanf関数とはsprintfの役割

scanf(screen,"%d",&n);
print(screen,"%d",n);

scanf関数は、本質的にスクリーンフォーマットからの入力の数は%dに変換されますnは
本質的に印刷%dの画面フォーマットにそれを得るために、数nから

sscanf(str,"%d",&n);
sprint(str,"%d",n);

sprintfの画面には、文字列または文字列配列、入力文字列配列に対応した数になることができます。
同様に、文字列のscanfの配列の数は、エクスポートします。

公開された19元の記事 ウォンの賞賛4 ビュー502

おすすめ

転載: blog.csdn.net/qq_35050438/article/details/103201335