Xor operátor – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Xor operátor – C / C++ – Fórum – Programujte.comXor operátor – C / C++ – Fórum – Programujte.com

 

oxidián0
Grafoman
13. 4. 2015   #1
-
0
-

v Cčku není xor operátor? nemyslím bitwise xor.

Něco jako toto:

if ( ( *(s+1) != '�' && *(s+1) != coordSep ) ^ // XOR
                 ( *(s+2) != '�' && *(s+2) != coordSep ) ) {
                printf("task file: incorrect separator follows zoom number:%d\n",coordSep);
                return -6;
}

jde o to že na pozici 1 nebo na pozici 2 musí být znak coordSep. Pokud není má to být chyba.

Nahlásit jako SPAM
IP: 78.45.199.–
KIIV
~ Moderátor
+43
God of flame
13. 4. 2015   #2
-
0
-

#1 oxidián
no na konci tvrdis: 

jde o to že na pozici 0 nebo na pozici 1 musí být znak coordSep. Pokud není má to být chyba.

Tvrdis "nebo" tak proc exclusive or?

+ proc je pozice 0 s indexem 1?

Nahlásit jako SPAM
IP: 94.113.95.–
Program vždy dělá to co naprogramujete, ne to co chcete...
oxidián0
Grafoman
13. 4. 2015   #3
-
0
-

Tak jsem to špatně napsal. Opraveno. Pozice 1 a pozice 2. Tam nemůže být or, s or to nebude fungovat.

Když na pozici 1 je čárka a na pozici 2 je číslice nebo naopak, tak je to v pořádku, ale or by to vyhodnotil jako chybu.

To xor je v tom, že nesmí nastat situace, že tam není čárka (ani na jedné pozici).

platné situace:

0,

,0

neplatné situace:

00

,,

Nahlásit jako SPAM
IP: 78.45.199.–
KIIV
~ Moderátor
+43
God of flame
13. 4. 2015   #4
-
0
-

a co ty konce retezce?  muze byt treba jen  "," nebo "0" jako platne zadani?

Nahlásit jako SPAM
IP: 94.113.95.–
Program vždy dělá to co naprogramujete, ne to co chcete...
oxidián0
Grafoman
13. 4. 2015   #5
-
0
-

#4 KIIV
musí tam být pár, jinak by to bylo nedokončené. *s != '\0'  && tam jen aby to nekrachlo

Nahlásit jako SPAM
IP: 78.45.199.–
KIIV
~ Moderátor
+43
God of flame
13. 4. 2015   #6
-
0
-

a co takto:   ((s[1] == '\0') || (s[2] == '\0') || ((s[1]==sep) ^ (s[2]==sep)))

Jelikoz ty porovnani vetsinou stejne vraci jen 0 nebo 1, tak i biwise xor bude fungovat. A kdybys chtel byt obzvlaste dukladny, tak  (s[1]==sep?1:0)

Nahlásit jako SPAM
IP: 94.113.95.–
Program vždy dělá to co naprogramujete, ne to co chcete...
oxidián0
Grafoman
13. 4. 2015   #7
-
0
-

Dobrý nápad ale musí tam být ještě negace před závorkou. A jak to udělat když chci do toho printf přidat pouze krátký výpis začátku s. Jako abych nevypisoval celý soubor...

if ( s[1] == '\0' || s[2] == '\0' ||
     !( s[1] == coordSep ^ s[2] == coordSep ) ) {
     printf("task file: incorrect separator follows zoom number:%s\n",s);
     return -6;
    }

Nahlásit jako SPAM
IP: 78.45.199.–
KIIV
~ Moderátor
+43
God of flame
13. 4. 2015   #8
-
+1
-
Zajímavé

mohlo by zabrat   %.3s  nebo tak

Nahlásit jako SPAM
IP: 94.113.95.–
Program vždy dělá to co naprogramujete, ne to co chcete...
oxidián0
Grafoman
13. 4. 2015   #9
-
0
-

Jo to je skvělé, dík

Nahlásit jako SPAM
IP: 78.45.199.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 65 hostů

Podobná vlákna

Funkce XOR obecně — založil oxidián

Xor: err 13 type mismatch — založil sdfsdfsdfsdf

Operátor -> — založil Adam

Operator<< — založil Gadael

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý