2009-09-03 64 views
1

什么是C#的Convert.ToInt16(String)方法的C等价物? 在我的情况,我的字符串是一个字符数组。 感谢C#Convert.ToInt16(String)C Equivalent

+0

在C++中,你有更多的选择 – 2009-09-03 13:06:17

+0

@Ionut,在C++中,你不知道什么类型为16位。在C中它将是'int'。 – 2009-09-03 13:11:46

+0

@Kirill:不是。 C不要求int是16位。它实际上规定,unsigned int可容纳0和UINT_MAX(含)之间的所有值。 UINT_MAX必须至少65535,int型必须包含至少16个比特来保存所要求的值的范围。所以是的,在C中你肯定至少有16位。 – 2009-09-03 13:23:05

回答

5

你可以尝试atoi

+0

我知道在某些情况下会有一些复杂情况,但是这足以解决我的问题。谢谢 – cocoatoucher 2009-09-03 20:17:28

1

使用atoi或与strtol。

int n = atoi(s) 
0

你也可以使用sscanf

sscanf("%i", myCharPointer, &myIntVar);