Гость Опубликовано 6 мая, 2004 Жалоба Поделиться Опубликовано 6 мая, 2004 проблема с упражнением 1.17( Здесь нужно вывести все строки имеющие длину более 80 символов). /* Napishite pojaluista kak mne vivesti massiv S iz funkcii getline v fukciu main. Y menya eto ne polychaetsya sdelat' i poetomy prihoditsya vivodit' znacheniya pryamo iz funkcii getline */ # include # define X 80 # define MAS 100 int getline(char s[]); main() { int len; char s[MAS]; while ((len=getline(s))>0); /* if (len>X) printf("%s",s);*/ } int getline (char s[]) { int i,c; for(i=0; (c=getchar())!=EOF && c!='\n';++i) s=c; if (c=='\n'){ s=c; ++i;} s='\0'; if (i>=X) printf(s); } Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 12 мая, 2004 Жалоба Поделиться Опубликовано 12 мая, 2004 В привиденном примере s имеет тип char[]. Определите тип char * - тогда это будет указатель. В принципе, эти типы совместимы при работе со строками, но char[] не является указателем. Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 19 августа, 2004 Жалоба Поделиться Опубликовано 19 августа, 2004 1. Prover perepolnenie buffera pri wwode stroki 2. funktia getline objawlena c tipom int, - dobavj return strlen(s) 3. massiv s v main posle vizowa getline zapolnen, twoy main::printf doljen rabotat Цитата Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.