我想问一下,我可以通过哪种方式将int数组的某些部分转换为int变量
例如
// my integer array contain 3,4,5,2,7
int array[] = {3,4,5 ,7,1,5,5,} ;
我希望变量int只包含数组的前3个成员,我的变量应该是这样的
`
int var = 345 ; // first three array members
我正在使用c编程 谢谢
答案 0 :(得分:2)
这样的事可能吗?
int var = 0;
for (i = 0; i < 3; i++) {
var *= 10;
var += array[i];
}
答案 1 :(得分:0)
你的意思是字符串连接?
char tmp[64];
sprintf(tmp, "%d%d%d", array[0], array[1], array[2]);
var = atoi(tmp);
注意上面的代码没有检查int或缓冲区溢出。
答案 2 :(得分:-1)
char *s = (char*)malloc(sizeof(char) * numOfArrayElementsToConvert);
for(int i =0;i<numOfArrayElementsToConvert;i++){
s[i] = itoa(arr[i]);
}
int var = atoi(s);