我希望用户只输入一个字符,比如'Y',然后我希望 Y 存储在数组的每个元素中(即:array[9]),这样当我打印时它就像'YYYYYYYYY',或者当它是一个二维数组(即:array[2][2])时,它看起来像:
YYY
YYY
YYY
我希望用户只输入一个字符,比如'Y',然后我希望 Y 存储在数组的每个元素中(即:array[9]),这样当我打印时它就像'YYYYYYYYY',或者当它是一个二维数组(即:array[2][2])时,它看起来像:
YYY
YYY
YYY
如果您需要打印每个输入的字符相同的次数,为什么要全部存储?它会浪费内存,只存储一个字符并打印所需的任意次数,所以一个数组就足够了,我猜。但是这个解决方案是我从你的问题中得到的,如果有一些限制,请分享或更好地分享代码......
您可以使用memset() from<cstring>
或std::fill() from <algorithm>
。所以对于 a char array[9];
,你可以这样做:
memset(array, 'Y', 9);
或者:
std::fill(array, array + 9, 'Y');
对于二维数组,您需要单独设置每一行。
使用 memset() 时要小心,因为长度以字节而不是元素给出。例如,如果你有一个int
数组,memset(array, 'Y', 9)
那就行不通了。std::fill() 没有这个问题。