Linux-Bulgaria.ORG
навигация

 

начало

пощенски списък

архив на групата

семинари ...

документи

как да ...

 

 

Предишно писмо Следващо писмо Предишно по тема Следващо по тема По Дата По тема (thread)

Re: lug-bg: gcc str[i]=''; ?!.


  • Subject: Re: lug-bg: gcc str[i]=''; ?!.
  • From: Doncho Angelov <dangelov@xxxxxxxx>
  • Date: Tue, 15 Jun 2004 15:59:04 +0300

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


dgt_it dgt_it wrote:

| Въпроса ми е , понеже забравих да го кажа - защо се счита за грешка,
проблема в мен/моята система ли е или и при вас го прави :(

Проблема е изцяло в твоята система :).
Ако искаш да сложиш нула: '\0'. Ако искаш интервал: ' '. '' си е празна
символна константа - т.е. грешка - няма такова нещо като празна символна
константа.
Справка - ANSI/ISO 14882, или С-стандарта - него не помня кой беше.


| Преди 2-3 дена този проблем го нямаше !!!

Може да е минавало заради бъг или недостатъчно стандартизиране на gcc.
Сега вече го озлобяват, т.е. - оправяй си бакиите,за да са по стандарт.

| Но се сетих , че ми се наложи онзи ден да ползвам 2.95 по деф. , а
беше на 3.3, затова направих ln -s /usr/bin/gcc /usr/bin/gcc-2.95 и
всичко заспа.

Ами разбира се - защото е по-старата версия.

Не знам как си представяш, че записвайки '' в паметта С-то ще се усети и
ще ти замаже този елемент в масива. С не е "високо-ентелигентен"- той
прави само това, което си му написал.
Преди може да е работело заради имплементацията, заради това как
операционната система печата символът, който С-то ти е слагало, когато
срещне '' (като нищо това е било символът '\777', което е 0xFF, което се
печата като празно.
За да изриеш символът "наистина" ползвай strcpy:
char *sym;
sym = <някакъв не константен стринг>;

// ако искаш за дамажеш първият символ:
strcpy(sym, sym+1, strlen(sym)-1));

// ако искаш за дамажеш Н-ят първият символ:
// НЕ Е дуракоустойчиво:
int n = 5;
assert(n < strlen(str) && n<(strlen(str)-1));
strcpy(sym+n, sym+n+1, strlen(sym)-n-1));


Поздрави!
Д.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3-nr1 (Windows XP)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iQIVAwUBQM7ymEQi94VvEkvtAQIqRw//UwfjB+cNdBb4AWzk8zIzKXJF7PBx97Av
RvSjBuBPCOd73nCZBFrK1QjTzovoKFMPMnQPKT0yOnrABDnE4OwtHSGZRTVGB+kJ
Fb5CNNbDhOELJHoGqzQbb6QADzlbTWkW+XSNO5oCkKrMKsW41b8UTHGrUk9yV+Bc
5VXX6HEqazYKmMF/jKO0lxYxYe1EcLGdFvyHQi7SsQIohiuJjVRSLGZyoxfetzS1
QqKNlh+GwUiCWYshd/R6BKNTdREozbm/Gsq/LPAO2+pv7U1lXJ6y3LR2kdBj/02K
nj4t45kmdS0oiTRSmF+ELKnjz4opeAJjPlCkbubNiaXwGhSaop1njgWbtovmjxts
qENumJkBSVzv7CjI8bvnX5jONBSy14PdBsBS0vam4Qva/VHdVaiN9PGEwk952Hvb
5PLBM1avE5uTA5RK3FaRdweGulEAv0/WKkuDtVHJuwqIIm1vioGpAy9whFqG8dnS
wyz8Q1Ca5+kN2SCksmjVaDY1K8C4wdL6K5qtvPL2nDLe4DT4rO3ijHFdJG58dlIx
2SDcsBYB14VJ0Rs2DsvPhJf2VOg7f2FW80etWtjCNqw594G258WLmD6lsQMUnFUi
rlH0ltoD6L6FtNuJmmSrGykxMBv9vI7huF3H0BOi0BZPmd42w9rqcJuT1ZiD94Vd
pUynTqZtq0M=
=Yy+J
-----END PGP SIGNATURE-----

============================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers).
http://www.linux-bulgaria.org - Hosted by Internet Group Ltd. - Stara Zagora
To unsubscribe: http://www.linux-bulgaria.org/public/mail_list.html
============================================================================



 

наши приятели

 

линукс за българи
http://linux-bg.org

FSA-BG
http://fsa-bg.org

OpenFest
http://openfest.org

FreeBSD BG
http://bg-freebsd.org

KDE-BG
http://kde.fsa-bg.org/

Gnome-BG
http://gnome.cult.bg/

проект OpenFMI
http://openfmi.net

NetField Forum
http://netField.ludost.net/forum/

 

 

Linux-Bulgaria.ORG

Mailing list messages are © Copyright their authors.