C, porównywanie napisów w ifach

0

czy jest możliwe sprawdzenie czy zgadza się warunek za pomocą takiej opcji?

 
char tab[10];
gets(tab);     //albo fgets(tab,10,stdin);
if(tab=='plus')   //tu tkwi moje pytanie czy mogę tak zrobić
printf("plus");
if(tab=='minus' )
printf("minus"); 
 

podejrzewam, że nie dlatego mam pytanie jak rozstrzygnąć problem gdy chcę wczytać np. jedną z dwóch opcji "plus" albo "minus" i w zależności od tego co wpiszę z klawiatury porównać to w ifie.

2

To co robisz jest kompletnie bez sensu.
http://www.cplusplus.com/reference/cstring/strcmp/

0

ale jest w ogóle taka możliwość, aby porównać bezpośrednio wczytaną przed chwilą tablicę znaków do jakiejś stałej tablicy znaków ?

1

No jest. Musisz porównywać każdą literke.

0
rafald121 napisał(a):

ale jest w ogóle taka możliwość, aby porównać bezpośrednio wczytaną przed chwilą tablicę znaków do jakiejś stałej tablicy znaków ?

Te funkcje powstały aby ułatwić życie, a nie utrudnić ;)

Jeśli nie ma przeciwwskazań, to powinieneś korzystać z funkcji bibliotecznych.

0

Ciekawostka. Jakbyś sie uparł to się da tak zrobić, ale sie tak nie robi bo to wiecej problemów niż korzyści.
https://ideone.com/oRHbwQ

#include <stdio.h>

int main(void) {
	char input[4] = "1234";
	if( *((int*)input) == *((int*)"1234") ) {
		printf("OK");
	}
	return 0;
}

2

Prosze. Poczytaj takze jak napisal @pingwindyktator

char tab[10];
gets(tab);     //albo fgets(tab,10,stdin); Pobieramy input do zmiennej tab
if(strcmp(tab, "plus") == 0) { //jesli wpisane plus
    printf("plus\n"); //wyswietl wiadomosc
} else if(strcmp(tab, "minus") == 0) { //jesli wpisane minus
    printf("minus\n");//wyswietl wiadomosc
}

Mozesz takze uzyc stricmp. To cos podobnego co strcmp tylko ze nie uwzglednia wielkosc liter

5

Zamiast pisać zakładać takie wątki na forum poszukaj pierwszego lepszego tutoriala na temat C, albo kup książkę.
Pytasz o podstawy, które są opisane nawet w najgorszej książce.
Marnujesz czas własny i nasz. Na forum wróć jak przeczytasz i będziesz miał problemy ze zrozumieniem czegoś konkretnego.

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