我想要用户只输入一个字符,说'Y',然后我想Y被存储在数组的每个元素(即:数组[9]),以便当我打印它会像'YYYYYYYYY' ,或者当它是一个二维数组(即:数组[2] [2]),它看起来像:如何在C++中将一个字符的用户输入存储到数组的每个元素中?
YYY
YYY
YYY
我想要用户只输入一个字符,说'Y',然后我想Y被存储在数组的每个元素(即:数组[9]),以便当我打印它会像'YYYYYYYYY' ,或者当它是一个二维数组(即:数组[2] [2]),它看起来像:如何在C++中将一个字符的用户输入存储到数组的每个元素中?
YYY
YYY
YYY
您可以使用memset()从<cstring>
,或std::fill()从<algorithm>
。所以对于一个char array[9];
,你可以这样做:
memset(array, 'Y', 9);
或:
std::fill(array, array + 9, 'Y');
对于一个二维数组,你会单独设置每一行。
小心使用memset()时,因为长度是以字节为单位给出的,而不是在元素中给出的。如果您有int
阵列,例如,memset(array, 'Y', 9)
不起作用。 std :: fill()没有这个问题。
如果您需要打印每个输入的字符相同的次数,为什么来存储所有?它会浪费内存,只存储一个字符并打印任何需要的次数,所以我猜,单个数组就足够了。但这种方法是我从你的问题了,如果有一些限制请不要共享或更好的共享代码...
存储和打印是两个不同的问题;所以哪一个你有问题,你试图解决什么问题? – 2013-02-23 09:20:28