0

我有一个字符串数组,它们包含有关对象在 3D 空间中位置的信息。位置用逗号分隔。逗号前的第一个是 x 位置,第二个是 y,第三个是 z。其中一些字符串是:

string a = "0.95,2.34,0" string b = "18.05,5,0" string c ="112.1,10,3" 我想将 0.95 分配给 float xPos,将 2.34 分配给 yPos,将 0 分配给 zPos 等。

我想在 for 循环中为数组中的每个字符串一一做这些。

我不能使用 substr 因为它们的长度不同。如何获取逗号之间的子字符串并将它们放入变量中?

-我使用 C++

PS对不起我的英语不好

4

2 回答 2

2

通常Split()在大多数语言中都有一种方法。您将在传入字符串上调用该方法,并将其拆分为逗号,然后您将得到一个包含两个字符串的结果数组,每个值一个。将第一个值放在 X 中,将第二个值放在 Y 中。您可能需要一个辅助方法来执行此操作。

于 2012-07-28T22:34:11.760 回答
1

您可以使用正则表达式获取 x、y 和 z 字符串值。然后您可以使用 TryParse 方法将值转换为加倍。

于 2012-07-28T22:34:22.457 回答