小编Isl*_*iev的帖子

为什么 printf 输出的是字符而不是数据?

为什么 printf 输出的是字符而不是数据?\n看代码,相对能明白我要做什么,但是不太明白为什么输出是这样的

\n
#include <vector>\n#include <string>\n#include <cstdio>\n\nclass Person\n{\npublic:\n    Person(const std::string& name, uint16_t old)\n        : m_Name(name)\n        , m_Old(old) \n    {\n    }\n\npublic:\n    std::string GetName() const { return m_Name; }\n    uint16_t GetOld() const { return m_Old; }\n\nprivate:\n    std::string m_Name;\n    uint16_t m_Old;\n};\n\nint main()\n{\n    std::vector<Person> person = { Person("Kyle", 26), Person("Max", 20), Person("Josiah", 31) };\n    for (uint16_t i = 0; i < person.size(); ++i)\n    {\n        printf("Name: %s Old: %u\\n", person[i].GetName(), person[i].GetOld());\n    }\n    return 0;\n}\n\n\n> // output\n>     Name: \xd0\xac\xc2\xb7\xe2\x95\xa3 Old: 1701607755 \n>     Name: \xd0\xac\xc2\xb7\xe2\x95\xa3 Old: …
Run Code Online (Sandbox Code Playgroud)

c++ printf for-loop vector

1
推荐指数
1
解决办法
100
查看次数

标签 统计

c++ ×1

for-loop ×1

printf ×1

vector ×1