forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   C++ (http://forum.boolean.name/forumdisplay.php?f=22)
-   -   ошибка в коде (http://forum.boolean.name/showthread.php?t=13168)

WhiteBlack 19.08.2010 13:42

ошибка в коде
 
начил читать книжку по языку С, там примерчик для подсчета кол-ва символов, слов и строк:
Код:

*подсчет кол-ва слов, символов и строк*/
#include <stdio.h>

#define IN 1
#define OUT 0

main()
{
 int c, nl, nw, nc, state;
 state=OUT;
 nl=nw=nc=0;
 while ((c=getchar())!=EOF)
 {
  if (c=="q")
  break;
  ++nc;
  if (c=='n')
  ++nl;
  if (c==" " !! c=='\n' !! c=='\t')
  state=OUT;
  else if (state==OUT)
  {
  state=IN;
  ++nw;
  }
 }
printf("%d%d%d\n", nl, nw, nc);
}

выдает ошибку здесь: if (c==" " !! c=='\n' !! c=='\t')
пишет "expected ')' before '!'"
зачем там нужна скобка?
я точно списал как в учебнике, подскажиет пожалуйста

P.S. я знаю, что слегка не по адресу, но если не трудно, помогите

.Squid 19.08.2010 13:47

Ответ: ошибка в коде
 
Какие нафиг восклицательные знаки?
Логическое или - это || (две вертикальные линии)
Скопируй и вставь.

WhiteBlack 19.08.2010 13:52

Ответ: ошибка в коде
 
блин, ну писец, извиняюся. Учебник в pdf формате, плохо видно знаки, а при копировании вообще фигню выдает
ладно спасибо

.Squid 19.08.2010 13:54

Ответ: ошибка в коде
 
Дык, учить синтаксис языка надо для начала, а не просто копировать.

WhiteBlack 19.08.2010 13:55

Ответ: ошибка в коде
 
цитата из учебника (раздел "Синтаксис языка"):
!! означает ИЛИ - вот так вот там напечатано

тогда можно еще один вопросик:
Код:

while ((c=getchar())!=EOF)
как этот EOF вызвать, чтобы результат программы посмотреть?

Mhyhr 19.08.2010 14:32

Ответ: ошибка в коде
 
Цитата:

как этот EOF вызвать, чтобы результат программы посмотреть?
EOF - End Of File
Думай головой =)

Knightmare 19.08.2010 14:37

Ответ: ошибка в коде
 
Эээ, чо за книга такая?
И еще - лучше сразу учись писать код нормально, а не такое говно как в первом посте.
PHP код:

if (c==" "  !! c=='\n' !! c=='\t'

IGR одобряэ!

.Squid 19.08.2010 14:40

Ответ: ошибка в коде
 
Цитата:

Сообщение от Knightmare (Сообщение 158949)
IGR одобряэ!

Жжошь :-)

WhiteBlack 20.08.2010 10:26

Ответ: ошибка в коде
 
Цитата:

Сообщение от pinqin (Сообщение 158947)
EOF - End Of File
Думай головой =)

и как я мог догадаться, что это "Ctrl+D" ?
ладно спасибо за помощь

ISergey 21.08.2010 03:44

Ответ: ошибка в коде
 
Цитата:

PHP код:

c=="q"
//...
c==" " 


Зачем адрес строки сравнивать?
Я так думаю нужно с символом
PHP код:

c=='q'
//...
c==' ' 

http://ideone.com/WCTMF


Часовой пояс GMT +4, время: 05:27.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot