Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   [решено] Как сравнить символ косая черта (\)? (http://forum.oszone.net/showthread.php?t=176255)

Ferum01 21-05-2010 20:56 1418433

Как сравнить символ косая черта (\)?
 
например if (sim1[0]=='\') a=1; не работает.
возможно для такого символа надо еще какие символы указывать?

мне надо, что б считывались только те строки вначале которых встречается сивол \ затем перезаписать в другой фал эти строки
или так
fscanf (fp1, "%s", sim1);
if (sim1[0]=='\') fprintf (fp2, "%s\n", sim1);

Drongo 21-05-2010 21:27 1418452

Ferum01, два слеша пишите \\

pva 21-05-2010 21:28 1418454

символ \ имеет специальное значение. Последовательность, которая идёт за ним воспринимается компилятором при сборе программы так:
\\ одинарный \
\NN число задаёт 8-ричный код символа
\xNN число задаёт 16-ричный код символа
\t табуляция \n перевод строки \r возврат каретки \b сигнал
эти и другие символы описаны в любом учебнике.
Пример: "c:\\windows" даст c:\windows

Ferum01 21-05-2010 22:00 1418474

условие заработало, но функция fscanf (fp1, "%s", sim1); не адекватно заполняется sim1 символом \ В итоге строки какие урезанные получаются

Ferum01 22-05-2010 11:58 1418712

Использовал функцию fgets(sim, 100, fp1); и все заработало
fsсanf не читал пробел и \t, поэтому файл не правильно считывался...


Время: 10:14.

Время: 10:14.
© OSzone.net 2001-