c++/sprintf: 无法识别的字符转义序列

c++/sprintf: unrecognized character escape sequence

如何避免这些 sprintf 警告?

C4129: '#' : unrecognized character escape sequence
C4129: ':' : unrecognized character escape sequence

sprintf(szBuf,"1312:%d\#%s\:",iVal,pUser)

如果您想在字符串中使用文字 \,则应将其写为 \

\ 字符开始一个转义序列,#: 都不是有效的第二个字符。它意味着允许换行符 \n 或制表符 \t.

当然,如果您不希望在结果字符串中包含 \,只需将其完全删除即可。