MyTypeのintとstringの値を出力するprintメソッドを作成したいと思います。ただし、doIt1でのみ機能します。印刷方法を変更するにはどうすればよいですか、誰か助けてもらえますか?
#include<stdio.h>
#include<string.h>
typedef struct {
int i;
char s[1024];
} MyType;
doIt1(MyType *mt, int ii, char *ss){
mt->i=ii;
strcpy(mt->s, ss);
}
doIt2(MyType mt, int ii, char *ss){
mt.i=ii;
strcpy(mt.s, ss);
}
void print(MyType mt){
print("%d\n", mt.i);
print("%s\n", mt.s);
}
int main(int argc, char ** argv){
MyType mt1, mt2;
doIt1(&mt1, 12, "Other Stuff");
doIt2(mt2, 7, "Something");
print(mt1); // print out mt1
print(mt2); // print out mt2
}