一种在C++中连接C字符串的更优雅的方法
A more elegant way to concatenate C strings in C++?
我想知道是否有一个。。。。无精打采地做这件事?我有一个赋值,它将信用卡信息放入UDP数据包中,信息在缓冲区中用冒号分隔,因此它看起来像存储在单个字符数组中的Bob Jones:7845 6133 7889 4425:09/2017:654.99
。
int main(int argc, char **argv)
{
char buffer[256];
char name[64];
char cardNum[32];
char expiration[8];
char amount[14];
while(true)
{
/*********
(Input prompts go here, break if user types quit)
*********/
strcpy(buffer, amount);
int length = strlen(buffer);
buffer[length] = ':';
strcat(buffer, cardNum);
length = strlen(buffer);
buffer[length] = ':';
strcat(buffer, name);
length = strlen(buffer);
buffer[length] = ':';
strcat(buffer, expiration);
/***************
(run all of the networking code)
***************/
}
return 0;
}
在C++中,可以使用+
连接std::string
对象,也可以附加到字符串流中。
在C和C++中,您都可以访问格式化的输出,我认为这在这里是首选,因为整个代码整齐地放在一行上:
sprintf(buffer, "%s:%s:%s:%s", amount, cardNum, name, expiration);
相关文章:
- 有哪些有效的方法可以消除一组 100 万个字符串>重复数据?
- 在 c++ 中对类中的 c 字符串动态数组进行排序的最佳方法是什么?
- 具有字符串化的可变参数宏的现代/通用方法
- 接收字符串并使用它来调用方法C++
- 如何分隔字符串并将标记传递给方法
- 是否有通用方法可以找到任何以 null 结尾的字符串的长度?
- 当映射包含字符串向量作为值时,从值中获取键的有效方法
- 在 C++11 中字符串化变量名称的替代方法
- 连接和压缩标准::vector<std::字符串的最佳方法>
- Esp8266 & Nodemcu:返回请求字符串的方法
- 将位字符串转储到二进制文件的最佳方法是什么
- 有没有一种 STL 方法可以找到字符串的所有排列,给出一个以 C++ 为单位的大小?
- 如何将字符串从 C++/CLI 方法返回到调用它的非托管C++
- 返回混合 \ 和 / 的文件系统路径字符串方法
- VS 链接器失败,标准::字符串方法出现"object already exists"错误
- Lua:为自定义用户数据提供一个字符串方法
- 语法错误字符串方法C++
- 返回原始子字符串的子字符串方法
- 为什么我不能在C++中使用这种方法与"char"而不是"字符串"方法?
- 如何使c++字符串函数的行为像Java和c#字符串方法