调用 strcat 时出现异常
Exception when calling strcat
我是 C 的新手,我需要将 JSON 写入文件。
我真的花了一个小时寻找一种将 int 附加到 str 的工作方法。
这是我的代码:
int day = 1;
char strDay = (char) day;
char str[100];
strcpy(str, "Blockchain");
strcat(str, strDay);
在 strcat 调用之前一切正常。
提前致谢
编辑:我正在使用 parson 将我的结构写入文件。 JSON 文件应该如下所示:
{
"Blockchain": {
"Block1": {
"Day": 2,
"Transaction1": {
"ID": 1,
"Amount": 2
}
},
"Block2": {
"Transaction2": {
"ID": 2,
"Amount": 5
}
}
}}
为此,我使用了 parson 库,它的工作方式如下:
json_object_dotset_number(root_object, "Blockchain.Block1.Transaction1.ID", tmpTransaction->accountID);
我需要一种方法来创建多个区块和交易,这就是为什么我想到将日期附加到区块并将 ID 附加到交易。
您可能已经意识到,strcat
仅适用于字符串。您应该调查 sprintf
和 snprintf
。例如:
{
char string[80];
int dayNumber;
dayNumber = 27;
sprintf(string, "\"Block1\": {\n\t\"Day\": %d,\n", dayNumber);
...
显然,我并不是要创建您的整个字符串。此外,这绝不应被视为完整代码。使用幻数(如 80 个字符的字符串缓冲区)是不好的做法。这只是一个例子。
我是 C 的新手,我需要将 JSON 写入文件。 我真的花了一个小时寻找一种将 int 附加到 str 的工作方法。
这是我的代码:
int day = 1;
char strDay = (char) day;
char str[100];
strcpy(str, "Blockchain");
strcat(str, strDay);
在 strcat 调用之前一切正常。 提前致谢
编辑:我正在使用 parson 将我的结构写入文件。 JSON 文件应该如下所示:
{
"Blockchain": {
"Block1": {
"Day": 2,
"Transaction1": {
"ID": 1,
"Amount": 2
}
},
"Block2": {
"Transaction2": {
"ID": 2,
"Amount": 5
}
}
}}
为此,我使用了 parson 库,它的工作方式如下:
json_object_dotset_number(root_object, "Blockchain.Block1.Transaction1.ID", tmpTransaction->accountID);
我需要一种方法来创建多个区块和交易,这就是为什么我想到将日期附加到区块并将 ID 附加到交易。
您可能已经意识到,strcat
仅适用于字符串。您应该调查 sprintf
和 snprintf
。例如:
{
char string[80];
int dayNumber;
dayNumber = 27;
sprintf(string, "\"Block1\": {\n\t\"Day\": %d,\n", dayNumber);
...
显然,我并不是要创建您的整个字符串。此外,这绝不应被视为完整代码。使用幻数(如 80 个字符的字符串缓冲区)是不好的做法。这只是一个例子。