Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.12.28;
Скачать: [xml.tar.bz2];

Вниз

Нашел какую-то фичу (может глюк) в D6...   Найти похожие ветки 

 
Циркуль   (2008-10-31 17:34) [0]

procedure TForm1.Button1Click(Sender: TObject);
var
 SL: TStringList;
begin
 SL := TstringList.Create;
 try
   SL.Add("1");
   Caption := """" + Format("%2.0s", ["1"]) + Format("%2.0s", [SL[0]]) + """";
 finally
   Sl.Free;
 end;
 Exit;
end;


Внимание вопрос: какой Caption получицо? :)

У кого как, а у меня " 1  ", хотя, казалось бы, должно быть " 1 1"


 
Palladin ©   (2008-10-31 17:47) [1]

"1"  в первом вызове считается как Char, указание prec каким то образом портит ситуацию если это String, но не влияет если это Char (лень разбираться)

Caption := """" + Format("%2.0s", [String("1")]) + Format("%2.0s", [SL[0]]) + """"; увидишь страшную странность

Caption := """" + Format("%2s", ["1"]) + Format("%2s", [SL[0]]) + """"; увидишь, что все хорошо...


 
Palladin ©   (2008-10-31 17:48) [2]


>  указание prec каким то образом портит ситуацию если это
> String

возможно считается, что передан Single...


 
Rouse_ ©   (2008-10-31 18:57) [3]


> хотя, казалось бы, должно быть " 1 1"

А справку нужно внимательней читать.
The precision specifier, if present in the format string, specifies the maximum length of the resulting string. If the argument is a string that is longer than this maximum, the string is truncated.  
Соответственно SL[0] являясь именно строкой урезался до нуля, а первый, являясь Char-ом остался как есть...
Если бы обьявить как Format("%2.0s", [SL[0][1]]) то было-бы " 1 1"



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2008.12.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
4-1203598024
Strate
2008-02-21 15:47
2008.12.28
GetExtendedTCPTable


15-1225443980
clickmaker
2008-10-31 12:06
2008.12.28
Кто-нибудь разворачивал asp.net под IIS 7 на Windows 2008 Server?


2-1227002330
Проходящий
2008-11-18 12:58
2008.12.28
Запуск программы без наличия Interbase


2-1227185785
snake-as
2008-11-20 15:56
2008.12.28
Как запустить *bat скрипт


15-1225078325
Slider007
2008-10-27 06:32
2008.12.28
С днем рождения ! 26 октября 2008 воскресенье





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский