Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
19 / 20 / 2
Регистрация: 19.04.2012
Сообщений: 181

Что делает строка кода "char a = (char)reader.Read"

26.04.2012, 10:58. Показов 2414. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я в си шарб нуб)) Хотя, в принципе, пока вроде ничего непонятного, кроме этого:
C#
1
2
3
4
5
6
7
8
9
10
void read(System.IO.StreamReader reader, int[] mass)
        {
            for (int i = 0; i < size; i++)
            {
                char a = (char)reader.Read();
                if (a == '1')
                    mass[i] = 1;
                else mass[i] = -1;
            }
        }
Так вот, что тут делает эта строка:
char a = (char)reader.Read();
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.04.2012, 10:58
Ответы с готовыми решениями:

что и как делает эта строка ciphertext = ciphertext + (char) (str[i] ^ key);?
вот код: /* В этой реализации интерфейса ICipher используется побитовая обработка и ключ. */ class BitCipher : ICipher { ushort...

Методы Char.IsLower Char.IsUpper Char.IsDigit
Доброго времени суток, месяц назад сделал задание: С помощью перебора всех символов строки, введенной в текстовое поле, вычислите...

Что делает строка кода Random.Next(5)
Подскажите, что делает данный метод? public Random Randomizer; Randomizer.Next(5); Думал что он генерирует какое то int значение,...

10
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
26.04.2012, 11:02
Считывает символ с потока и присваивает его переменной "а"
0
19 / 20 / 2
Регистрация: 19.04.2012
Сообщений: 181
26.04.2012, 11:30  [ТС]
Цитата Сообщение от kolorotur Посмотреть сообщение
Считывает символ с потока и присваивает его переменной "а"
ну эт было понятно, а теперь основной вопрос. Эта конструкция char a = (char)reader.Read() возможно как-то перемещает курсор в файле, что б при следующем вызове процедуры void read, считывания начиналось с того места, где закончилось прошлый раз?
0
 Аватар для gitarillo
755 / 554 / 48
Регистрация: 17.06.2010
Сообщений: 1,041
Записей в блоге: 1
26.04.2012, 12:24
Если не ошибаюсь, то сам метод .Read() считывает очередной символ из потока. То есть на каждой итерации считывается последующий символ. Также в вашей конструкции используется явное приведение типов.
0
19 / 20 / 2
Регистрация: 19.04.2012
Сообщений: 181
26.04.2012, 12:32  [ТС]
Цитата Сообщение от gitarillo Посмотреть сообщение
Если не ошибаюсь, то сам метод .Read() считывает очередной символ из потока. То есть на каждой итерации считывается последующий символ. Также в вашей конструкции используется явное приведение типов.
Эм... Тоесть, если у меня есть это
C#
1
2
3
4
5
6
        const int size = 40
        int[] X1 = new int[size];
        int[] X2 = new int[size];
        int[] X3 = new int[size];
        int[] X4 = new int[size];
        int[] X5 = new int[size];
и это
C#
1
2
3
4
5
            read(sr, X1);
            read(sr, X2);
            read(sr, X3);
            read(sr, X4);
            read(sr, X5);
и это
C#
1
2
3
4
5
6
7
8
9
10
void read(System.IO.StreamReader reader, int[] mass)
        {
            for (int i = 0; i < size; i++)
            {
                char a = (char)reader.Read();
                if (a == '1')
                    mass[i] = 1;
                else mass[i] = -1;
            }
        }
то, таким образом я буду записывать в масивы x1,x2,x3,x4,x5 по 40 очередных символов. Итого, получится, что я просмотрел в файле 200 символов?
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
26.04.2012, 13:01
Да.
А вы не пробовали запустить этот код и посмотреть на результат? Это ведь самый лучший способ обучения.
0
19 / 20 / 2
Регистрация: 19.04.2012
Сообщений: 181
26.04.2012, 20:32  [ТС]
Вопрос №2
Итак, почему тут
C#
1
2
3
4
5
6
7
8
...
          int i = e.X / 20;//тут
          int j = e.Y / 20;//и тут
          if(mode)
                d[j * 9 + i]=1;
            else d[j * 9 + i]=-1;
            panel1.Refresh();
.....
можно переменные целого типа i и j делить на 20? Что будет результатом такой операции?
0
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
26.04.2012, 21:10
Цитата Сообщение от vetal20600 Посмотреть сообщение
можно переменные целого типа i и j делить на 20? Что будет результатом такой операции?
Можно. Результатом будет частное, выраженное целым числом, с округлением в сторону нуля:
C#
1
2
int b = 20;
int c = b / 3;  // c = 6 а не 6.333...
1
98 / 81 / 16
Регистрация: 14.01.2011
Сообщений: 438
26.04.2012, 21:14
vetal20600, вам же kolorotur в этом посте абсолютно всё рассказал,как быть в таких случаях..
Цитата Сообщение от kolorotur Посмотреть сообщение
А вы не пробовали запустить этот код и посмотреть на результат? Это ведь самый лучший способ обучения.
0
19 / 20 / 2
Регистрация: 19.04.2012
Сообщений: 181
26.04.2012, 21:34  [ТС]
Цитата Сообщение от tezaurismosis Посмотреть сообщение
Можно. Результатом будет частное, выраженное целым числом, с округлением в сторону нуля:
C#
1
2
int b = 20;
int c = b / 3;  // c = 6 а не 6.333...
Спасибо.

Цитата Сообщение от NowMatrix Посмотреть сообщение
vetal20600, вам же kolorotur в этом посте абсолютно всё рассказал,как быть в таких случаях..
Значит я не могу этого сделать по обьективным причинам. Разве так сложно ответь на такой не сложный как по мне вопрос?..
0
26.04.2012, 21:44

Не по теме:

Нет,конечно не сложно,просто на будущее.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
26.04.2012, 21:44
Помогаю со студенческими работами здесь

Объясните, что делает строка кода
МОжете объяснить что делает эта строка: string digits = &quot;0123456789abcdefghijklmnopqrstuvwxyz&quot;;в этой программе: using System; using...

Объясните, что делает эта строка кода?
string s = new string(s.ToCharArray().Reverse().ToArray()); Пожалуйста, объясните супер подробно, и как можно проще, что делает эта...

Что делает строка int main(int nArg, char* pszArgs[])
Подскажите пожалуйста что делает строка - int main(int nArg, char* pszArgs). А точнее что делают nArg, char, pszArgs Добавлено через...

Строка: чем отличается строки string, char, char*?
Помогите разобраться,совсем плохо идёт,чем отличается строки string,char,char* И если можно пару примеров Буду весьма признательна

Надо записать дробь, грубо говоря, в виде char* fract = char numer + '/' + char denomen
Пытался сделать это strcat'ом, но ошибка в стиле :&quot;Эта функция сулит потерю данных&quot;. #define _CRT_SECURE_NO_WARNINGS не помог. Есть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru