我正在尝试学习有关PHP函数sprintf()的更多信息,但由于我仍然感到困惑,php.net并没有太大帮助,您为什么要使用它? 看下面我的例子。 为什么使用这个: $output = sprintf("Here is the result: %s for this date %s", $result, $date); 当这样做相同并且更容易编写IMO时: $output = 'Here is the result: ' .$result. ' for this date ' .$date; 我在这里想念什么吗?
我想要以下输出:- 将从您的充值帐户中扣除27.59欧元的50%。 当我做这样的事情时: $variablesArray[0] = '€'; $variablesArray[1] = 27.59; $stringWithVariables = 'About to deduct 50% of %s %s from your Top-Up account.'; echo vsprintf($stringWithVariables, $variablesArray); 但这给了我这个错误,vsprintf() [function.vsprintf]: Too few arguments in ...因为它也考虑使用%in 50%进行替换。我该如何逃脱?
我的理解是,它string是std名称空间的成员,那么为什么会发生以下情况? #include <iostream> int main() { using namespace std; string myString = "Press ENTER to quit program!"; cout << "Come up and C++ me some time." << endl; printf("Follow this command: %s", myString); cin.get(); return 0; } 每次程序运行时,都会myString打印一个看似随机的3个字符的字符串,例如在上面的输出中。
有没有一种方法可以指定要输出的字符串中多少个字符(类似于ints中的小数位)? printf ("Here are the first 8 chars: %s\n", "A string that is more than 8 chars"); 想要打印: Here are the first 8 chars: A string