void pprint_hand(struct hand *hand, int space) { for(int n = 0; n < space; n++) { printf(" "); } if(!hand) { printf("NULL\n"); return; } char buf[MAX_CARD_STR_LEN]; if (!card_str(&hand->card, buf, sizeof(buf))) { printf("Invalid card\n"); } else { printf("In hand: %s\n", buf); } pprint_hand(hand->left, space + 1); pprint_hand(hand->right, space + 1); }
void card_show_log(FILE *fp, int cd[], int n) { int k; for ( k = 0; k < n; k++ ) { if ( cd[k] < 0 ) { continue; } fprintf(fp, "%s ", card_str(cd[k])); } }
void card_show(int cd[], int n) { int k; for ( k = 0; k < n; k++ ) { if ( cd[k] < 0 ) { continue; } printf("%s ", card_str(cd[k])); } }
void test_card_str(void) { struct card_s refcardJH, refcardOS; char refJH[3] = { 'J', 'H', 0x00 }; char refOS[3] = { 'O', 'A', 0x00 }; char card[3]; refcardJH.suite = HEART; refcardJH.face = JACK; refcardOS.suite = FIRST; refcardOS.face = JOKER; card_str(refcardJH, card); CU_ASSERT(0 == strncmp(card, refJH, 0x2)); card_str(refcardOS, card); CU_ASSERT(0 == strncmp(card, refOS, 0x2)); }