В процессе изучения C# под mono, написал программу сортирующую одномерный массив.
Все работало до тех пор пока не решил сделать обработку исключений на некорректный ввод.
Исходники:
using System;
namespace lab1
{
public class Program
{
static int Main()
{
Console.Write("Введите количество элементов массива: ");
try
{
int count = Convert.ToInt32( Console.ReadLine() );
int[] mas = new int[count];
}
catch (Exception e)
{
Console.WriteLine("Ошибка: {0}", e);
return 1;
}
for (int i=0 ; i < count ; i++)
{
try
{
Console.Write("Введите значение {0}-го элемента: ", i);
mas[i] = Convert.ToInt32( Console.ReadLine() );
}
catch (Exception e)
{
Console.WriteLine("Ошибка: {0}", e);
return 1;
}
}
int buf;
for (int i=0 ; i < (count - 1) ; i++)
for (int j=i ; j < count ; j++)
if (mas[j] < mas[i])
{
buf = mas[j];
mas[j] = mas[i];
mas[i] = buf;
}
Console.Write("Отсортированный массив:");
for (int i=0 ; i < count ; i++)
Console.Write("{0} ", mas[i]);
return 0;
}
}
}
Ошибки:
~ $ mcs lab1.mcs
lab1.mcs(15,11): warning CS0219: The variable `mas' is assigned but its value is never used
lab1.mcs(23,23): error CS0103: The name `count' does not exist in the context of `lab1.Program'
lab1.mcs(28,6): error CS0103: The name `mas' does not exist in the context of `lab1.Program'
lab1.mcs(38,24): error CS0103: The name `count' does not exist in the context of `lab1.Program'
lab1.mcs(39,24): error CS0103: The name `count' does not exist in the context of `lab1.Program'
lab1.mcs(40,10): error CS0103: The name `mas' does not exist in the context of `lab1.Program'
lab1.mcs(42,13): error CS0103: The name `mas' does not exist in the context of `lab1.Program'
lab1.mcs(43,16): error CS0103: The name `mas' does not exist in the context of `lab1.Program'
lab1.mcs(43,7): error CS0103: The name `mas' does not exist in the context of `lab1.Program'
lab1.mcs(44,7): error CS0103: The name `mas' does not exist in the context of `lab1.Program'
lab1.mcs(48,23): error CS0103: The name `count' does not exist in the context of `lab1.Program'
lab1.mcs(49,27): error CS0103: The name `mas' does not exist in the context of `lab1.Program'
Compilation failed: 11 error(s), 1 warnings
~ $
Проблема точно в обработке исключений, так как если ее закомментировать,
то программа компилируется нормально.
Не могли бы вы сказать в чем дело?
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от anonymous
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум 2fagot (2006)
- Форум Потокобезопасность синглтона для подключений к БД (2012)
- Форум C# (2007)
- Форум Множественное наследование и try/catch inderect base, C++ (2008)
- Форум C#(mono) (2005)
- Форум rename не атомарный? (2021)
- Форум Squid + локальные сайты (2010)
- Форум /usr/local/bin/samsredir, squid и https (2006)
- Форум /usr/local/bin/samsredir, squid и https (2006)
- Форум Порт не освобождается после закрытия приложения (2017)