mirror of
https://github.com/ioacademy-jikim/debugging
synced 2025-06-23 07:46:22 +00:00
50 lines
750 B
Diff
50 lines
750 B
Diff
--- src/money.5.c 2015-08-03 04:31:25.000000000 +0900
|
|
+++ src/money.6.c 2015-08-03 04:31:25.000000000 +0900
|
|
@@ -1,38 +1,45 @@
|
|
#include <stdlib.h>
|
|
#include "money.h"
|
|
|
|
struct Money
|
|
{
|
|
int amount;
|
|
char *currency;
|
|
};
|
|
|
|
Money *money_create(int amount, char *currency)
|
|
{
|
|
- Money *m = malloc(sizeof(Money));
|
|
+ Money *m;
|
|
+
|
|
+ if (amount < 0)
|
|
+ {
|
|
+ return NULL;
|
|
+ }
|
|
+
|
|
+ m = malloc(sizeof(Money));
|
|
|
|
if (m == NULL)
|
|
{
|
|
return NULL;
|
|
}
|
|
|
|
m->amount = amount;
|
|
m->currency = currency;
|
|
return m;
|
|
}
|
|
|
|
int money_amount(Money * m)
|
|
{
|
|
return m->amount;
|
|
}
|
|
|
|
char *money_currency(Money * m)
|
|
{
|
|
return m->currency;
|
|
}
|
|
|
|
void money_free(Money * m)
|
|
{
|
|
free(m);
|
|
return;
|
|
}
|