【发布时间】:2019-12-04 20:59:39
【问题描述】:
你能不能从一个变量中取一个整数,例如:
int i=17;
char array[]= i;
现在我想拥有
array[3]= {1,7,\0}
我知道它不能这样工作,但如果没有一些我不想使用的特殊功能,我不知道该怎么做。感谢您的帮助。
这是我想出的:
char array[];
int counter = 172; //the number i want to put into string
int i= 0;
int p=0;
float c = counter;
int k=0, g=0, h=0;
while(counter !=0){
counter = counter /10;
c= c/10;
p++;
}
while(p !=0){
c=c*10;
k=c;
h= k-g;
g=k*10;
array[i] = h;
i++;
p--;
}
array[i]= '\0';
【问题讨论】:
-
使用浮点数既矫枉过正又容易出错。无论出于何种原因,您想要避免的那些“特殊函数”使用简单的 %10 获取整数的数字。给定一个整数 x,x%10 是它的最右边的数字。然后将其除以 10 (x /= 10) 以去除该数字,并得到下一个数字,等等。