Замените строку
if (planets[i].name == name_d)
на
if (planets[i] == name_d)
Если хотите, чтобы вызывался operator==
Но у вас там кроме этого ещё очень много странностей.
Зачем сравниваете строки напрямую? Есть
strcmp
Зачем вообще работаете с сырыми строками, если даже не следите за очисткой памяти?
Лучше замените все на std::string.