Другие языки программирования и технологии
Пожалусто помогите разобраться в тексте программы С++
Мне непонятныдве последние две строчки в следующем примере. void__fastcall TForml::ButtonlClick(TObject *Sender){float u; // напряжениеfloat r; // сопротивлениеfloat i; // ток// получить данные из полей ввода u = StrToFloat(Editl->Text); r = StrToFloat(Edit2->Text);// вычислить ток i = u/r;// вывести результат в поле метки Label4->Caption = "Ток : " +FloatToStrF(i,ffGeneral,7,2) + "А";}1) Поясните роль символов после знака = . Для чего в конце стоит плюс ?Label4->Caption = "Ток : " +2) Какую роль выполняют символы в скобках и после скобок?FloatToStrF(i,ffGeneral,7,2) + "А"; // какие другие цифры можно вставить вместо цифр 7 и 2 , и что при этом получиться? Такой же вопрос про символ "А"
+ - конкатенаця или суммирование строк
три строки суммируются, поэтому 2 плюса
Функция FloatToStrF конвертирует значение Value с плавающей запятой в визуализуемую строку, с большим управлением по форматированию через значения Format, Precision, и Digits.
Типом Value может быть любой из с типов с плавающей запятой.
Параметр Format определен TFloatFormat (SysUtils) типом:
ffCurrency eg : $2,345.60
ffExponent eg : 2.3456E+04
ffFixed eg : 2345.60
ffGeneral eg : 2345.6
ffNumber eg : 2,345.6
Возможные значения TFloatFormat:
ffGeneral - Определяет универсальное числовое форматирование, которое стремится сохранить результирующее значение как можно компактнее. Он удаляет конечные нули и десятичную точку, где возможно. Никакие разделители тысяч не показываются. Формат экспоненты используется, если мантисса является слишком большой для указанного значения Precision команды форматирования. В этом случае, значение Digits (0.. 4) определяет минимальное число показываемых цифр экспоненты. Символ десятичной точки определен переменной DecimalSeparator. ffExponent
три строки суммируются, поэтому 2 плюса
Функция FloatToStrF конвертирует значение Value с плавающей запятой в визуализуемую строку, с большим управлением по форматированию через значения Format, Precision, и Digits.
Типом Value может быть любой из с типов с плавающей запятой.
Параметр Format определен TFloatFormat (SysUtils) типом:
ffCurrency eg : $2,345.60
ffExponent eg : 2.3456E+04
ffFixed eg : 2345.60
ffGeneral eg : 2345.6
ffNumber eg : 2,345.6
Возможные значения TFloatFormat:
ffGeneral - Определяет универсальное числовое форматирование, которое стремится сохранить результирующее значение как можно компактнее. Он удаляет конечные нули и десятичную точку, где возможно. Никакие разделители тысяч не показываются. Формат экспоненты используется, если мантисса является слишком большой для указанного значения Precision команды форматирования. В этом случае, значение Digits (0.. 4) определяет минимальное число показываемых цифр экспоненты. Символ десятичной точки определен переменной DecimalSeparator. ffExponent
Скорее всего этот оператор + перегружен для строкового типа. Скорее всего это просто склеивание строк.
Т. е. в итоге получается сообщение Ток: значение А
Т. е. в итоге получается сообщение Ток: значение А
Чего тут сложного? Справку читай - элементу label4 свойству caption присваевается строка, к которой добавляется значение переменной i переведённое в строку. Зачёт ты завалил.
вообще-то вот так Label4->Caption = "Ток : " + FloatToStrF(i,ffGeneral,7,2) + "А";
в caption label4 записывается строка "Ток : " + FloatToStrF(i,ffGeneral,7,2) + "А"; , где кавычки " " означают строковый элемент в C++, а FloatToStrF(i,ffGeneral,7,2) - преобразование i в строку. при этом i является переменной с плавающей запятой и для нее задается вид вывода (на пример: 125 или 1,25E+2 - в таком смысле ). это надо в хэлпе смотреть по FloatToStrF.
в caption label4 записывается строка "Ток : " + FloatToStrF(i,ffGeneral,7,2) + "А"; , где кавычки " " означают строковый элемент в C++, а FloatToStrF(i,ffGeneral,7,2) - преобразование i в строку. при этом i является переменной с плавающей запятой и для нее задается вид вывода (на пример: 125 или 1,25E+2 - в таком смысле ). это надо в хэлпе смотреть по FloatToStrF.
Похожие вопросы
- Помогите разобраться с написанием программы Паскале!
- Помогите, пожалуйста, написать текст программы на языке высокого уровня (Basic или Pascal)!
- Помогите пожалуйста, в тексте программы на языке С++,есть синтаксическуя ошибка, никак не могу исправить.
- Помогите написать текст программы на С++
- Помогите написать текст программы.
- посмотрите мою программу на с++.Помогите разобраться
- Помогите с текстом программы на Turbo Pascal
- Помогите разобраться в программе.
- В чем ошибка? Помогите разобраться! (программа на С++: добавление столбца в матрицу)
- Прошу помочь разобраться, пояснить некоторые пункты требования ТИПОГРАФИИ.