ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

12.06.2008, 00:56
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме: 2187381
Репутация:
518
|
|
Сообщение от procedure
еще вопрос, а как мне нужно полностью массив в char переделать?
int array[100];
переделать вот так:
char array[100];
да....
самое главное будет приведенье к типу char
если с=getchar() целое занимающее 2 байта
то получить код символа отбросив старший байт можно
array[index]=(char )c;
|
|
|

12.06.2008, 01:39
|
|
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
Провел на форуме: 2360904
Репутация:
1393
|
|
Сообщение от procedure
z01b-> когда я только дошел до циклов в книге, у меня была задачка скопировать входной поток в выходной с фильтрацией символов. Я ее так и не смог не применяя функций (кроме getchar) и массивов решить, сейчас хотяб так постараюсь решить. Только не помогайте чуваки плиз, если что я вопрос сам задам. Я хочу сам сделать)))
Потом постепенно буду добавлять в эту задачку новые упражнния усложняя ее все более и более.
Код:
#include <windows.h>
int main(int argc, char* argv[])
{
char in[255];char out[255];int i;scanf("%s",&in);for(i=0;i<=lstrlen(in);i++){out[i]=in[i];}printf("%s",out);return 0;}
Я гений?
ЗЫ У меня редактор такой и не пашет.
Последний раз редактировалось z01b; 12.06.2008 в 01:44..
|
|
|

12.06.2008, 01:43
|
|
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме: 3885269
Репутация:
1158
|
|
V obshem ya ispravil vot tak:
Код:
int c, nl, t, space, n, i, l;
char array[100];
.........
while ((c = getchar()) != EOF) {
........
else {
array[i] = (char )c;
/*array[i] = c;*/
++i;
}
Tolko v chem to dopustil oshibku seichas eksperementiruu.
|
|
|

12.06.2008, 01:44
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме: 2187381
Репутация:
518
|
|
почти 8)))))))))
если тут исправишь
scanf("%s",&in);
2 procedure
идешь в правильном направлении
Последний раз редактировалось Delimiter; 12.06.2008 в 01:46..
|
|
|

12.06.2008, 01:46
|
|
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме: 3885269
Репутация:
1158
|
|
тебе же сказали c== getchar()
eto ne sravnenie, a prisvaivanie,
|
|
|

12.06.2008, 01:48
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме: 2187381
Репутация:
518
|
|
с=getchar()
не сбивай его....
|
|
|

12.06.2008, 01:50
|
|
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме: 3885269
Репутация:
1158
|
|
Mojet bit nujno "c" sdelat char?
|
|
|

12.06.2008, 01:56
|
|
Banned
Регистрация: 08.04.2005
Сообщений: 446
Провел на форуме: 2187381
Репутация:
518
|
|
нет getchar возвращает int , на случай скан-кодов со времен Dos
так уж клавиатура устроена что количество кодов которое она может выдать больше чем 255!
попробуй понять мою строку
for(i=0;(array[i]=(char )getchar())!=EOF;i++)
....
|
|
|

12.06.2008, 01:56
|
|
Постоянный
Регистрация: 05.01.2007
Сообщений: 508
Провел на форуме: 2360904
Репутация:
1393
|
|
Сообщение от procedure
Mojet bit nujno "c" sdelat char?
нет, там все окей  с присваивается код введенного символа.
|
|
|

12.06.2008, 02:05
|
|
Banned
Регистрация: 22.12.2007
Сообщений: 660
Провел на форуме: 3885269
Репутация:
1158
|
|
a est ved raznica mejdu ++i; and i++; V kingie bilo napisano chto ++i; eto increment. A ostalnoe xz potom obyasnyat*)))))))
(array[i]=(char )getchar())!=EOF
eto ya ponyal tak, v massiv dobavlyautsa dannie poka idet vvod i poka virajenie ne ravno EOF.
v obshem seihas poprobuu.
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|