Для строки формата вы можете использовать «% c» вместо «% c». Заготовка вызывает scanf (), чтобы пропустить пробел (включая символы новой строки) перед чтением символа.
Обычно, да. Наконец раздел, как гарантируют, выполнится что бы ни случилось включая исключения или оператор возврата. Исключением к этому правилу является асинхронное исключение, происходящее на потоке (OutOfMemoryException
, StackOverflowException
).
Для получения дополнительной информации об асинхронных исключениях и надежном коде, в который ситуации считайте [приблизительно 112] принужденные регионы выполнения .
Вот немного теста:
class Class1
{
[STAThread]
static void Main(string[] args)
{
Console.WriteLine("before");
Console.WriteLine(test());
Console.WriteLine("after");
}
static string test()
{
try
{
return "return";
}
finally
{
Console.WriteLine("finally");
}
}
}
результат:
before
finally
return
after
Заключение в кавычки от MSDN
наконец используется, чтобы гарантировать, что блок операторов кода выполняется независимо от того, как предшествование попытка блок , вышел .
Да. Это на самом деле что основной момент наконец оператор. Если что-то, catestrophic происходит (из памяти, отключенный компьютер, и т.д.) наконец оператор, не должно всегда выполняться.