69,336
社区成员
发帖
与我相关
我的任务
分享
void intToStr (int n,char str[]) {
int i=0,j,len,m=n;
char tmp;
if(n<0) {
str[0]='-';
str[1]='\0';
i++;
n=-n;
}
do {
str[i]=(n%10+0x30);
n/=10;
i++;
}while(n!=0);
str[i]='\0';
len=i;
if(m<0) {
i=1;
}else{
i=0;
}
for(j=len-1;i<len/2;i++,j--) {
tmp=str[i];
str[i]=str[j];
str[j]=tmp;
}
}
root@~ #cat int2str.c
#include <stdio.h>
#define N 3
struct string {
char str[10];
};
int main (void) {
struct string chstr[N];
int num[N],i;
char temp[10];
void intToStr (int n,char str[]);//convert ingeter to char-string
void strcp (char s1[],char s2[]);//copy char-string
printf ("Enter a digit array:\n");
//Get a integer array
for(i=0;i<N;i++) {
scanf ("%i",&num[i]);
}
//Traversal integer array,and convert digit to character array
for(i=0;i<N;i++) {
intToStr(num[i],temp);
strcp(temp,chstr[i].str);
}
//Display character array in struct.
printf ("Converted ...\n");
for(i=0;i<N;i++) {
printf ("%s ",chstr[i].str);
}
printf ("\n");
return 0;
}
void strcp (char s1[],char s2[]) {
int i=0;
while(s1[i]!='\0') {
s2[i]=s1[i];
i++;
}
s2[i]='\0';
}
void intToStr (int n,char str[]) {
int i=0,j,len,m=n;
char tmp;
if(n<0) {
str[0]='-';
str[1]='\0';
i++;
n=-n;
}
do {
str[i]=(n%10+0x30);
n/=10;
i++;
}while(n!=0);
str[i]='\0';
len=i;
if(m<0) {
i=1;
}else{
i=0;
}
for(j=len-1;i<len/2;i++,j--) {
tmp=str[i];
str[i]=str[j];
str[j]=tmp;
}
}
root@~ #
int a[2] = {1, 2};
char c[2];
for( int i = 0; i < 2; i++ ) c[i] = a[i];