私は 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]);
}
};