1 Naposledy upravil: MightyPork (2014-09-18 14:56:00)

Téma: [vyřešeno] Nelze použít apostrof ve stringu- nefunguje escape sekvence

Např.

echo("Here's a message.");

pochopitelně nejde zkompilovat, protože kompiler nerozlišuje char a string a všude vyžaduje jednoduché uvozovky.

Tohle je problém, protože apostrof značí konec řetězce

echo('Here's a message.');

Logický krok - použijeme escape sekvenci

echo('Here\'s a message.');

To se v editoru správně zvýrazní jako součást stringu, ovšem nejde to zkompilovat.

Chyba je něco ve stylu "String must end on the same line", tj. parser ignoruje \ a myslí si, že string už skončil, a pak zase začíná další...

Chcete #include, lepší makra, řídící struktury atd. v SDS-C? Nástroj SDSCP vám to umožní!

2

Re: [vyřešeno] Nelze použít apostrof ve stringu- nefunguje escape sekvence

Toto je omezení starší verze SDS-C překladače.
Zavedení \' by přineslo ještě další zmatek - když už jsou ( " ) nahrazeny ( ' ).

Důvod pro použití ( ' ) místo ( " ) je v tom, že SDS-C se u předávání parametrů chová jako Pascal, ne jako C (viz např. echo() versus printf() ve FULL-C). Pro zvýraznění této rozdílnosti je u SDS-C použit jiný znak ( ' ) pro ohraničení stringů.

Aktuální verze si s \' správně poradí.

Pochlubte se - popište jak využíváte své zařízení SDS zde ! Můžete si bezplatně přidat svou reklamu !