Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.04.2019, 15:35   #1
lisica198808
Пользователь
 
Регистрация: 06.11.2012
Сообщений: 64
По умолчанию Возвращающая функция, как правильно вызвать, оформить?

Подскажите, как правильно оформить мою возвращающую функцию Massiv()? мне нужно, чтоб данные из моей функции передавались в основное меню вызова и в дальнейшем проводить с полученным массивом различные операции уже оттуда.
на строку
Код:
 return massiv;
- выбивает "Элемент massiv не существует в текущем контексте".

Код:
namespace text
{
    class Program
    {
        
        static void Main(string[] args)
        {
           // Massiv();
            int[] mas_test = Massiv();
            Console.ReadLine();

        }

        public static int[] Massiv()
        {
            string[] Mass = File.ReadAllLines(@"D:\test.txt", System.Text.Encoding.Default);
            int stroka = Mass.Length;
         //   Console.WriteLine("Количество строк в файле: " + stroka + "\n");// + "Вторая строка: " + Mass[1]);

            for (int s = 0; s < stroka; s++)
            {
                string s_test = Mass[s];
                string st = s_test.Remove(0, s_test.IndexOf(' '));//удалим значения от 0 позиции до указанного знака чтоб получить нужный размер строки


                string[] str = st.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);//разобьем полученную строку на под строки
                int[] massiv = Array.ConvertAll(str, int.Parse);//получим необходимый целочисленный массив
                
                //Console.WriteLine(string.Join(" ", massiv));//выведем его на экран
                
            }
            return massiv;
            
        }

         }
}
lisica198808 вне форума Ответить с цитированием
Старый 09.04.2019, 15:39   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Так его там и не существует. Он умер вот тут:
Код:
                int[] massiv = Array.ConvertAll(str, int.Parse);//получим необходимый целочисленный массив
                
                //Console.WriteLine(string.Join(" ", massiv));//выведем его на экран
                
            }
p51x вне форума Ответить с цитированием
Старый 09.04.2019, 16:23   #3
lisica198808
Пользователь
 
Регистрация: 06.11.2012
Сообщений: 64
По умолчанию

Как же мне его грамотно воскресить??? :-(
Необходимо вначале объявить массив, а затем его каким-то значениям присваивать??
lisica198808 вне форума Ответить с цитированием
Старый 09.04.2019, 16:24   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Как один из вариантов. Можете просто раньше возвращать.
p51x вне форума Ответить с цитированием
Старый 09.04.2019, 16:38   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от lisica198808 Посмотреть сообщение
Необходимо вначале объявить массив, а затем его каким-то значениям присваивать??
простите, а Вы видите, что это всё у Вас ВНУТРИ цикла
Цитата:
Код:
 for (int s = 0; s < stroka; s++)
?
т.о. stroka раз выполнится тело цикла, в том числе многократно будет создана переменная str, которая многократно будет преобразована в int[] massiv
для каждой следующей строки предыдущий массив будет утерян безвозвратно.

p.s. именно поэтому я в вашей прошлой теме http://www.programmersforum.ru/showp...32&postcount=5 собирал все числа в одну строчку, а потом её разом преобразовывал в массив.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функция, возвращающая три значения REztor Microsoft Office Excel 3 06.12.2016 21:22
Функция, возвращающая массив (С++) Alendorff Помощь студентам 14 09.03.2012 17:23
Функция возвращающая указатель ]tach[ Общие вопросы C/C++ 1 19.01.2011 14:35
Функция возвращающая char Exeil Общие вопросы C/C++ 2 18.10.2010 19:42
Функция возвращающая массив babaj Общие вопросы Delphi 8 04.07.2009 17:40