我是 C 编程新手。我正在编写一个程序来通过表示数组中的整数来实现大整数加法。我把 printf 放在我的主程序的任何地方,并发现 strrev 部分是导致问题的原因(我只把错误的部分放在这里,而不是主程序。但我不知道出了什么问题。谁能帮忙我跟一样吗?
下面的代码 -
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
struct integer
{
char store[200];
int length;
};
void printer2(struct integer x1);
int main()
{
struct integer x1;
x1.store[0]=1;
x1.store[1]=2;
x1.store[2]=3;
x1.store[3]=4;
x1.store[4]=5;
x1.length=5;
printer2(x1);
strrev(x1.store);
printer2(x1);
return 0;
}
void printer2(struct integer a1)
{
int j;
for (j=0;j<a1.length;j++)
{
printf("a1 %d is %d\n",j,a1.store[j]);
}
};