Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)
Avatar
Libor Šimo (libcosenior):8.2.2014 12:45

Používa sa v php operátor čiarka ako v céčku?
Skúšal som, ale nefungovalo to.

Odpovědět 8.2.2014 12:45
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Jiří Gracík
Redaktor
Avatar
Odpovídá na Libor Šimo (libcosenior)
Jiří Gracík:8.2.2014 12:58

Ako sa použivá čiarka v céčku :D?

Nahoru Odpovědět  +3 8.2.2014 12:58
Creating websites is awesome till you see the result in another browser ...
Avatar
Odpovídá na Jiří Gracík
Neaktivní uživatel:8.2.2014 13:28

mozna blbost ale nemysli \?
jako C:\\ ?

Nahoru Odpovědět  -4 8.2.2014 13:28
Neaktivní uživatelský účet
Avatar
Honza Bittner
Šupák
Avatar
Odpovídá na Neaktivní uživatel
Honza Bittner:8.2.2014 13:31

To není čárka, to je lomítko, zpětné.

Nahoru Odpovědět  +2 8.2.2014 13:31
Milovník Dartu. Student FIT ČVUT. Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/...
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Jiří Gracík
Zdeněk Pavlátka:8.2.2014 13:34

Čárka v jazycích C a C++ je operátor, který zajistí vyhodnocení výrazů na obou stranách, ale neurčuje pořadí vyhodnacení(zleva doprava/zprava doleva). Stejně to funguje např. i v JavaScriptu.

Nahoru Odpovědět 8.2.2014 13:34
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Honza Bittner
Neaktivní uživatel:8.2.2014 13:35

ano to vim, ale mohl se i spatne vyjadrit :)

Nahoru Odpovědět 8.2.2014 13:35
Neaktivní uživatelský účet
Avatar
Honza Bittner
Šupák
Avatar
Odpovídá na Zdeněk Pavlátka
Honza Bittner:8.2.2014 13:41

Napíšeš příklad v JS? :) Někaj nevím co máš na mysli... :D

Nahoru Odpovědět 8.2.2014 13:41
Milovník Dartu. Student FIT ČVUT. Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/...
Avatar
Odpovídá na Jiří Gracík
Libor Šimo (libcosenior):8.2.2014 13:43

Syntax operátora čiarky je jednoduchý – výraz: výraz1, výraz2
Zpracocácá sa tak, že výraz1 sa vyhodnotí a je zabudnutý, potom sa vyhodnotí výraz2 a to je vlastne záverečný výsledok po použití výrazu s operátorom čiarky.
Príklad:

int i = 2, j = 4;        /* toto nie je operátor čiarky */
j = (i++, i – j);      /* toto už je, i bude 3 a j bude -1 */
Nahoru Odpovědět 8.2.2014 13:43
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Nahoru Odpovědět 8.2.2014 13:46
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Libor Šimo (libcosenior):8.2.2014 13:52

Používa sa hlavne v cykloch.
"Operátor čárka má zcela jedinečnou funkci. Říká překladači udělej tohle a tohle a tohle. To znamená, že se čárka používá pro zřetězení několika operací.

V následujícím cyklu se čárka používá v inicializační části pro inicializaci dvou řídících proměnných cyklu a v části pro inkrementaci i a j."

for(i=0, j=0; i+j<pocet; i++, j++) .......
int i, sum;
for ( i = 1, sum = 0; i<=11; sum +=i, i++)
     ;
Editováno 8.2.2014 13:54
Nahoru Odpovědět 8.2.2014 13:52
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Honza Bittner
Zdeněk Pavlátka:8.2.2014 13:57

Hlavní využití má u cyklů, jak psal Libor Šimo (libcosenior) .

Editováno 8.2.2014 13:59
Nahoru Odpovědět  +1 8.2.2014 13:57
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Libor Šimo (libcosenior):8.2.2014 14:13

Vrátim sa k pôvodnej otázke.
Po pár testoch som si overil, že operátor čiarka v php pracuje ako v céčku.
Príklad:

$x = $_POST['cislo1'];

for ( $x, $sucin = 1; $x <= 10; $x += 2){
                $sucin *= $x;
                echo("$sucin<br />");
}

Pri vstupe 3 je výsledok
3
15
105
945

Nahoru Odpovědět 8.2.2014 14:13
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Zdeněk Pavlátka
Tým ITnetwork
Avatar
Odpovídá na Libor Šimo (libcosenior)
Zdeněk Pavlátka:8.2.2014 14:15

Na tomhle je ta čárka zrovna k ničemu, protože $x je už před cyklem.

Nahoru Odpovědět 8.2.2014 14:15
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Zdeněk Pavlátka
Libor Šimo (libcosenior):8.2.2014 14:20

Tak iný príklad:

$i = 0;
        for ( ; $i<11; printf("%d<br />",$i), $i++)
                ;

Hlavne že viem, že to funguje a v prípade potreby sa to dá použiť.

Nahoru Odpovědět 8.2.2014 14:20
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Odpovídá na Zdeněk Pavlátka
Libor Šimo (libcosenior):8.2.2014 14:23

Odpovedám na toto:
"Na tomhle je ta čárka zrovna k ničemu, protože $x je už před cyklem."

mohlo to byť takto:

for ( $x = 3, $sucin = 1; $x <= 10; $x += 2){
               $sucin *= $x;
               echo("$sucin<br />");
}

Už je to v poriadku? :)

Nahoru Odpovědět  +1 8.2.2014 14:23
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Libor Šimo (libcosenior):8.2.2014 14:41

Ani by som to nebol začal riešiť tu na fóre, ale jeden príklad mi proste nefunguje a normálne by mal (v céčku ide):

$i = 2;
$j = 4;
$j = ($i++, $i$j);
echo("$i, $j");

Fakt to nechápem.

Nahoru Odpovědět  -1 8.2.2014 14:41
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Libor Šimo (libcosenior):8.2.2014 15:37

Hovorí sa:
"Proti gustu žiadny dišputát."
Ale nechápem, prečo som dostal dva mínusy za predchádzajúci príspevok, v ktorom som vysvetlil, prečo som to tu vlastne riešil.
Že by som tým niekoho urazil? :O
Skôr som čakal od tých, čo sa smiali operátoru čiarka, že aspoň uznajú chybu.
Bolo by to prinajmenšom spravodlivé.

Nahoru Odpovědět  +4 8.2.2014 15:37
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Honza Bittner
Šupák
Avatar
Odpovídá na Libor Šimo (libcosenior)
Honza Bittner:8.2.2014 16:02

Nějak jsem nepochopil v čem je lepší

$j = ($i++, $i$j);

než toto, což je přehlednější

$i++;
$j = $i$j;

? :P

Nahoru Odpovědět  +2 8.2.2014 16:02
Milovník Dartu. Student FIT ČVUT. Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/...
Avatar
Odpovídá na Honza Bittner
Libor Šimo (libcosenior):8.2.2014 17:48

Ono je to vlastne jedno, kompilátor to asi preloží úplne rovnako, chcel som len vedieť, či sa to dá aj takto použiť v php.
To je všetko.

Nahoru Odpovědět 8.2.2014 17:48
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Libor Šimo (libcosenior):8.2.2014 17:49

Každopádne si veľmi rozmyslím, kedy a či vôbec použijem túto techniku v nejakom programe. ;)

Nahoru Odpovědět 8.2.2014 17:49
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Libor Šimo (libcosenior):8.2.2014 18:01

A úplne posledná vec k tejto téme.
Každému sa môže stať, že pri analýze programu od niekoho iného narazí na takúto časť kódu a nebude vedieť o čo ide.
Preto je dobré vedieť, že také niečo existuje.

Mrzí ma, ak sa to čo tu bolo popísané niekomu protivilo. Ospravedlňujem sa.
Otázka je vyriešená, prosím zamknúť vlákno.

Nahoru Odpovědět  +1 8.2.2014 18:01
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Honza Bittner
Jan Vargovský:8.2.2014 18:14

V PHP nejde napsat ? :)

$j = $++i – $j;
 
Nahoru Odpovědět 8.2.2014 18:14
Avatar
Honza Bittner
Šupák
Avatar
Odpovídá na Jan Vargovský
Honza Bittner:8.2.2014 18:21

Tak snad

$j = ++$i$j;

ne? :P

A ano, jde to.

Nahoru Odpovědět 8.2.2014 18:21
Milovník Dartu. Student FIT ČVUT. Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/...
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na Honza Bittner
Jan Vargovský:8.2.2014 18:27

Nevím jak je ta správná syntax, PHP jsem viděl jen z rychlíku :D každopádně díky :)

Editováno 8.2.2014 18:27
 
Nahoru Odpovědět  +1 8.2.2014 18:27
Avatar
Odpovídá na Jan Vargovský
Martin Konečný (pavelco1998):8.2.2014 18:28

Můžeš napsat tyto dva zápisy:

$i++
++$i
Nahoru Odpovědět 8.2.2014 18:28
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Avatar
Honza Bittner
Šupák
Avatar
Odpovídá na Jan Vargovský
Honza Bittner:8.2.2014 18:30

Proměnná $pes je stejné jako v C# pes :)

Nahoru Odpovědět  +1 8.2.2014 18:30
Milovník Dartu. Student FIT ČVUT. Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/...
Avatar
Honza Bittner
Šupák
Avatar
Odpovídá na Martin Konečný (pavelco1998)
Honza Bittner:8.2.2014 18:31

V tomto použití jaké psal on

$j = ++$i$j;

Ti $i++ nebude fungovat.

Nahoru Odpovědět 8.2.2014 18:31
Milovník Dartu. Student FIT ČVUT. Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/...
Avatar
Odpovídá na Honza Bittner
Martin Konečný (pavelco1998):8.2.2014 18:32

Ne, to nebude. Jen jsem psal, že může použít oba zápisy.

Nahoru Odpovědět 8.2.2014 18:32
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 28 zpráv z 28.