Автор Гілка: Мовчазний mcs, Говіркий mono  (Прочитано 2482 раз)

Відсутній Fakel._Enterpuer

  • Кореспондент
  • ***
  • дописів: 164
  • Карма: +0/-0
  • Debian Gnu/Linux
Мене з самого початку цікавило mono, знав що mono зараз не достатньо продукоментований, але все більш-менш толково повинно працювати.
Ну покопав я той c#, зрозумів що якийсь синтаксис кривий, ці прописні букви і уйма фігурних скобок... Дико... (Після паскаля).
Ну ладно, пройшов час почав трохи миритися,  можливо пізніше будуть розширені всі функції.
Почав усвоювати, запам’ятовувати синтаксис, "накопав" трохи невеликих мануалів, основна документація з simple-cs.ru, ну так щоб щось писати і не помилятися якимось чином навчився.
Потім щось дивне почало діятися з компілятором, спочатку mcs тикає мені на наступну строчку і говорить що там помилка (насправді воно і так повино бути, программа не виконується з наступної строки, тому і там зупиняється, не привик зразу).
Ну писало воно мені error,warnings потім почав розглядати приклади з константами, тепер коїться щось жахливе mcs компілює код а при запуску бінарника вилазять системні помилки, ужость  :( .
using System;
class Constants
{
      static void Main()
      {
            const double stala1 = 7.67 ;
            const double stala2 = 10.97;
            int c = pi+g;
        Console.WriteLine (" ініціалізація: {} ", stala1.ToString );
        Console.WriteLine (" ініціалізація: {} ", stala2.ToString, c.ToString );
Console.ReadLine();
}
      }
Головне в MonoDevelop не виводить errors,warning ось що відбувається під час запуску программи:
Unhandled Exception: System.FormatException: Input string was not in a correct format.
  at System.String.ParseFormatSpecifier (System.String str, System.Int32& ptr, System.Int32& n, System.Int32& width, System.Boolean& left_align, System.String& format) [0x00000]
  at System.String.FormatHelper (System.Text.StringBuilder result, IFormatProvider provider, System.String format, System.Object[] args) [0x00000]
  at System.String.Format (IFormatProvider provider, System.String format, System.Object[] args) [0x00000]
  at System.String.Format (System.String format, System.Object arg0) [0x00000]
  at System.IO.TextWriter.Write (System.String format, System.Object arg0) [0x00000]
  at System.IO.TextWriter.WriteLine (System.String format, System.Object arg0) [0x00000]
  at System.IO.SynchronizedWriter.WriteLine (System.String format, System.Object value) [0x00000]
  at System.Console.WriteLine (System.String format, System.Object arg0) [0x00000]
  at myInt.Main (System.String[] args) [0x00000]


LUG irc.id.km.ua

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3820
  • Карма: +11/-0
  • Програміст
Re: Мовчазний mcs, Говіркий mono
« Відповідей #1 : 2008-06-05 15:47:29 »
Напевно моня очікує текст в унікоді (UCS-16/32?), а ви йому підсовуєте UTF-8.
[Fedora Linux]

Відсутній Fakel._Enterpuer

  • Кореспондент
  • ***
  • дописів: 164
  • Карма: +0/-0
  • Debian Gnu/Linux
Re: Мовчазний mcs, Говіркий mono
« Відповідей #2 : 2008-06-26 16:22:41 »
гм, довго неписав, але десь накопав що правильно в тілі тексту вводити так:
("... {0}",змінна );
так працює, і ToString не потрібно (не обов’язково переводити без потреби).
LUG irc.id.km.ua

Відсутній sicheslav

  • Новачок
  • *
  • дописів: 31
  • Карма: +0/-0
  • It's my Life...
Re: Мовчазний mcs, Говіркий mono
« Відповідей #3 : 2008-07-02 12:18:01 »
Ну...  ::)  щодо говіркого моно... Там "ToString" -  методом повинно бути. Тобто,  в синтаксисі С#,  правильно буде
 ToString(), а mcs просто в об*єкт намагається перевести;
« Змінено: 2008-07-02 12:25:27 від sicheslav »
Завжди і всюди для Добра!

Відсутній Fakel._Enterpuer

  • Кореспондент
  • ***
  • дописів: 164
  • Карма: +0/-0
  • Debian Gnu/Linux
Re: Мовчазний mcs, Говіркий mono
« Відповідей #4 : 2008-07-03 22:35:58 »
stala1 {0}, stala2 {1} ось в чому проблема, а переводив в рядок, що і треба було.
Та і створювати новий метод для цієї простої задачі непрактично.
Ось так треба було :
...
        Console.WriteLine (" ініціалізація першої сталої:: {0} ", stala1.ToString );
        Console.WriteLine (" ініціалізація другої сталої: {1} ", stala2.ToString);
          Console.WriteLine ("Сума двох сталих : {2}", c.ToString );
Console.ReadLine();
}
      }
Не досить гарно, но суть в цьому була.
LUG irc.id.km.ua