Как вы можете печатать текст с фактическим знаком% в нем с помощью printf/sprintf? напримерКак избежать% в printfn/sprintf?
let fn = 5
printf "%i%" fn
дает ошибку компиляции. Очевидный \%
тоже не работает.
Как вы можете печатать текст с фактическим знаком% в нем с помощью printf/sprintf? напримерКак избежать% в printfn/sprintf?
let fn = 5
printf "%i%" fn
дает ошибку компиляции. Очевидный \%
тоже не работает.
Используйте «%%», где вы хотите получить% в выходном тексте.
Из примера выше
let fn = 5
printf "%i%%" fn
будет счастливо печатать «5%»
(Кроме того, если вы хотите напечатать «% 5» по какой-то причине, единственный способ я нашел для конкатенации строк т.е.
"%"+ (printf "%i" 5)
потому
printf "%%%i" 5
не будет работать)
Вы всегда могли бы сделать что-то вроде:.
let fn = 5
printf "%i%s" fn "%"
Стоит отметить, что была ошибка в исходной F # 3.1 выпуска, где 'printfn«%%»' начал печатать «% % "вместо"% ". Если кто-то сталкивается с этим, 3.1.1 и последующие обновления исправили его. – latkin