有没有办法隐藏一个字符串并将其放入如下数组中:
y = sin(log(tan(x)))
->;{"y", "=", "sin", "(", ...}
没有空格的问题如下:sin(x)
=sin ( x )
以下是我的代码:
bool firstDone = 0;
char strr[][4] = { "sin", "cos", "(", ")", "x" };
char str[] = "sin(cos(x))", st[7][5];
for (int i = 0; i < 4; i++) {
if (!firstDone) {
if (strlen(strtok(str, strr[i])) < 4) {
strcpy(st[i], strtok(str, strr[i]));
firstDone = 1;
}
}
if (firstDone) {
if (strlen(strtok(NULL, strr[i])) < 4) {
strcpy(st[i], strtok(NULL, strr[i]));
}
}
}
for (int i = 0; i < 7; i++) {
printf("%s, ", st[i]);
}