从数组生成随机字符串

时间:2014-12-18 16:10:05

标签: string arduino arrays

我有以下数组:

  char song[] = {'c', 'd',' ', 'e', 'f',' ', 'g', 'a', 'b', 'C',' '};

我想生成一个由我指定的随机字符串长度,如int len=10

我该怎么做

char notes [] =“在此生成随机数据”;

编辑:我是新的

我试过了

char song[] = {'c', 'd',' ', 'e', 'f',' ', 'g', 'a', 'b', 'C',' '};
char fs[];
int lengthh=10;

int i;

for(i = 0;i < lengthh; i++){

 fs = fs + song[random (0, 10)];

}

String str(fs);


char notes[] = fs[];

错误

Circuit_11.ino: In function 'void loop()':
Circuit_11:109: error: incompatible types in assignment of 'char' to 'char [0]'
Circuit_11:116: error: expected primary-expression before ']' token

1 个答案:

答案 0 :(得分:1)

你的问题就在这一行:

fs = fs + song[random (0, 10)];

fs是指向char的指针,无法将其添加到char[0]类型。 如果要追加到数组,则必须每次递增索引变量i。 就像这样:

fs[i] = song[random (0, 10)];

如果你想使用像该行代码一样的附加,你必须使用c ++的String库:

string str,song={'0','3',...};

str = str + song[random(0,10)];