Ошибка C sharp и конкат-строки не работают

#string #concatenation

Вопрос:

Почему эта простая программа не работает?

 using System;

namespace ConsoleApp7
{
    class Program
    {
       
        static void Main(string[] args)
        {

            string name;
            string all;
            for (int i = 1; i <= 3; i  )
            {
                Console.WriteLine("enter name");
                name = Console.ReadLine();
         
                Console.WriteLine(name);
                all =string.Concat(all, name);

            }
            Console.WriteLine("all the names are ");
       //     Console.WriteLine(s1);

        }
    }
}
 

Это выдает ошибку и не каскадирует все строки?
Спасибо

Комментарии:

1. ок преуспел таким образом

2. использование системы; пространство имен ConsoleApp7 { программа класса { статическая пустота Main(строка[] args) { имя строки = «», все=»»; для (int i = 1; i Линия записи(«введите имя»); имя = Консоль. ReadLine(); Консоль. Строка записи(имя); все =строка. Конкат(все, имя, » «); } Консоль. Строка записи(«все имена есть » все); } } }

Ответ №1:

Вам нужно инициализировать значение переменной all . Вот пример, который работает:

 static void Main(string[] args)
{

    string name;
    string all = null;
    for (int i = 1; i <= 3; i  )
    {
        Console.WriteLine("enter name");
        name = Console.ReadLine();

        Console.WriteLine(name);
        all = string.Concat(all, name);

    }
    Console.WriteLine("all the names are ");
    Console.WriteLine(all);
}
 

Однако обратите внимание, что между тремя именами не добавлены разделители. Если бы кто-то, например, ввел «один», «два» и «три», то результатом было бы «одно-три». Может быть, ты хочешь чего-то другого, а может быть, и нет.