Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
 Аватар для Armando111
2 / 1 / 2
Регистрация: 07.02.2014
Сообщений: 246

Массив структур

10.12.2016, 23:25. Показов 2457. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, вот у меня есть такая структура
C#
1
2
3
4
5
6
7
    public struct client_attr
    {
        public int count;
        public string ip;
        public string name;
        public Socket clientSocket;
    }
И вот такой код:
C#
1
static client_attr[] client1 = new client_attr[30];
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 client1[id].ip = ((IPEndPoint)handler.RemoteEndPoint).Address.ToString();
                        client1[id].name = data;
                        client1[id].count = count;
                        client1[id].clientSocket = handler;
                        //byte [] list_mem = new byte[listBox1.Items.Count]; 
                        //handler.Send(Encoding.UTF8.GetBytes(client1[count].name + ""));
                        foreach(client_attr soc in client1)
                        {
                            handler.Send(Encoding.UTF8.GetBytes("add:" + client1[id].name));
                            if (soc.clientSocket == handler)
                            {
                            }
                            else
                            {
                                //Console.WriteLine(client1[id].name);
                                soc.clientSocket.Send(Encoding.UTF8.GetBytes("add:" + client1[id].name));
                            }
                        }
По всей видимости, что то с циклом, выдаёт исключение, что ссылка на объект не указывает на экземпляр объекта
вот в этой строчке:
C#
1
soc.clientSocket.Send(Encoding.UTF8.GetBytes("add:" + client1[id].name));
Как мне сделать цикл, который поможет пройти мне по всему массиву структуры.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.12.2016, 23:25
Ответы с готовыми решениями:

Массив структур
struct Phones { public int number; public string marka; public int functions; public Phones(int number,...

Создать массив структур
Здравствуйте,возникла проблема,а именно-есть структура,и нужно создать список структур. Вот создал ориентируясь на схожие темы,найденные...

Использовать массив структур
Доброго дня. Как в данном коде можно использовать массивы с помощью структур? Пытался изменить, но тщетно public double f(double x) ...

2
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
11.12.2016, 01:17
Вероятно soc.clientSocket == null. Почему? Вам виднее.
0
 Аватар для Armando111
2 / 1 / 2
Регистрация: 07.02.2014
Сообщений: 246
11.12.2016, 17:20  [ТС]
Добавлено через 2 часа 47 минут
Я подправил чуть программку,
Вот тут выходит исключение:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
else if (data.IndexOf("send:") >= 0)
                    {
                            // for (int i = 0; i <= idConnect;i++ )
                            //{
                            // Console.WriteLine("true-2");
 
                            int start = data.IndexOf(":");
                            int end = data.IndexOf("::");
                            int len = end - start - 1;
                            //connect[idConnect].firstClient = data.Substring(start + 1, len);
                            string message = data.Substring(start+1, len);
                            start = data.IndexOf("::");
                            end = data.Length;
                            len = end - start - 1;
                     }
Прям в первой строчке пишет, что
C#
1
ссылка на объект не указывает на экземпляр объекта
Как я понял, пока выполняется команда IndexOf, строка data, меняется в другом потоке. Как это дело синхронизировать?

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

Динамический массив структур
Подскажите пожалуйста, как удобней всего создать динамический массив структур.

Заполнить массив структур
Помогите нужно создать массив структур в Майн и заполнить его в классе Student через метод Reg На данный выдает эту ошибку ...

массив структур в массиве класса
Доброго времени суток. Помогите мне пожалуйста. У меня есть Класс setka private class setka { public int sx ; ...

Как создать массив из структур
Вот я создал структуру using System; class Del { struct Chel { public string name; public int age;...

Получить массив структур из библиотеки на C++
Ребята помогите. Есть некий сервис, написанный на C#, и dll к нему на C++. Мне надо в функцию этой dll передать массив структур, там его...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru