我正在研究一个C程序,我正在努力解决它(我已经被面向对象的概念所破坏)。
我想做的是:
我想将char数组中的值放入int中。例如,我有char[0] == '1'
和char[1] == '2'
。我想将这些值放在一个int变量中,因此它的值为12.我试过看但我不知道如何完成它。
我真的很擅长解释所以请在必要时询问更多信息。
答案 0 :(得分:1)
如果字符数组包含一个字符串,如果它是零终止的,那么您可以应用标题atoi
中声明的标准C函数<stdlib.h>
。
例如
char s[] = "12";
int x = atoi( s );
如果数组未以零终止
char s[2] = "12";
然后您可以手动将其内容转换为整数。
例如
int x = 0;
for ( size_t i = 0; i < sizeof( s ) / sizeof( *s ); i++ )
{
x = 10 * x + s[i] - '0';
}
答案 1 :(得分:0)
您要做的是称为解析。在c中,这可以通过atoi()函数完成,如下所示:
char s[] = "12";
int num = atoi(s);