こんにちは
現在、ハッシュテーブルを学んでいます。
Keyとvalueの値を並べて出力する時に、配列最後の要素だけコンマ", " をとって表示したい場合のコードですが、
このint flagの働きがよく理解できません。
出力結果:
{'Betty': 'Cool', 'python': 'awesome', 'Bob': 'and Kris love asm', '98': 'Battery Street', 'N': 'queens', 'c': 'fun', 'Asterix': 'Obelix'(←ここだけコンマがない)}
どなたか説明いただけないでしょうか?
void hash_table_print(const hash_table_t *ht) { unsigned long int index; unsigned long int flag; hash_node_t *temp; if (ht == NULL) return; printf("{"); for (index = 0; index < ht->size; index++) { temp = ht->array[index]; while (temp) { if (flag == 1) printf(", "); printf("'%s': '%s'", temp->key, temp->value); flag = 1; temp = temp->next; } } printf("}\n"); }
まだ回答がついていません
会員登録して回答してみよう