wyszukiwanie w tablicy struktur

0

Witam, mam drobne problemy z wyszukiwaniem.

struct header {
	int id;
	char element1[128];
	char element2[64];
}
header t[10];

header tmp;
cout << "ID: " << endl;
cin >> tmp.id;
//odczytywanie danych ...

for (int i =0; i<sizeof t; i++)
{
	if (t[i].element1 == tmp.element1)
	{
		if (t[i].element2 == tmp.element2)
		{
			if (t[i].id == tmp.id)
				{
					//..
				}
		}
	}
}

Nie wiem jak zrobić żeby znalazło element tablicy, który może zarówno spełniać jeden warunek jak i wszystkie przy mniejszej ilości if'ow.

0

Możesz przecież wykorzystać operator &&.

0

Problem jest taki, że jeśli użyje tego operatora i wpisz wszystkich zmiennych to nic nie znajdzie. Chodzi mi coś takiego że wpiszę jedną/dwie zmienną i na podstawie tego znajdzie wszystkie pasujące elementy z tablicy.

1

Użyj II oznacza on albo, czyli starczy że wystarczy jeden spełniony warunek żeby całość była True

0

Jeśli możesz modyfikować tablicę, użyj std::partition, jeśli nie: std::copy_if.

1 użytkowników online, w tym zalogowanych: 0, gości: 1