我需要遍历我的char数组的每个位置,只存储int,我需要使用每个数字进行计算。
我有
char num1[a];
char num2[b];
基本上,我需要添加num1[1]+num2[1]
和num1[2]+num2[2]
等等。
如何将每个字符位置转换为int
进行计算?
提前致谢
答案 0 :(得分:0)
char's
操作数隐式地将 int
提升为+
,以便您可以添加,如下所示:
int main()
{
int i;
char a[5] = {1,2,3,4,5};
char b[5] = {6,7,8,9,10};
for(i=0;i<5;i++)
printf("%d\n",a[i] + b[i]);
return 0;
}
答案 1 :(得分:0)
你的问题有点不清楚。
如果您要在int
数组中添加所有char
,请使用isdigit()
中的ctype.h
来检查它是否为数字并添加另一个变量{ {1}}相应地
sum
或者,如果您确定该数组仅包含数字,请删除上述代码中的int i,sum=0,len=strlen(num1);
for( i=0 ; i<len ; i++ )
{
if(isdigit(num1[i])
sum=sum+(num1[i]-'0');
}
如果要添加两个不同数组的每个整数,请使用
if
如果sum=(num1[i]-'0')+(num2[i]-'0');
是sum
变量初始化为零,int
和num1
是num2
数组和char
,则索引为要添加的数组。