strlen的问题
- C/C++ code
#include <iostream>#include <cstring>#include <cstdio>using namespace std;float var;int main(){ char buffer[32]; cout << "Value :"; cin >> var; sprintf(buffer ,"$ %.0f", var); cout << "UnFormatted :" << buffer <<endl; short len=strlen(buffer); cout << "buffer length" << len <<endl; return 0;}输入var=123
经过sprintf格式化后,为什么长度是5??难道多出来的时因为加上了结束的\0??
[解决办法]
Value :123
UnFormatted :$ 123
buffer length5
Press any key to continue
$ 123 这个不是5?
[解决办法]
[解决办法]
sprintf(buffer ,"$ %.0f", var);
多了"$ "
[解决办法]
我晕,
- C/C++ code
sprintf(buffer ,"$ %.0f", var);