昨天我发布了一份关于必须使用 C++ 编写的新帐户程序的大合同。我的问题结束了,但我认为因为它有很多错误。通过当地 C++ 专家的大量工作和咨询,我修复了我们拥有的原始代码:
#include <accounting.h>
#include <stdio.h>
char *main()
{
accounting bank = 100debits;
bank = bank + 200debits;
return printf("bal: %accounting\n", bank);
}
我们定义的一些类的新版本运行良好,但唯一的问题是 C++ 无法将新行写入文件。下面的代码按原样工作,但如果我放回注释行,我没有输出到文件。
#include <stdlib.h>
#include <stdio.h>
#include <cstring>
#define accounting float
#define print_accounting(x) x "%0.2f"
#define debits * 1.0F
#define credits * -1.0F
int main()
{
accounting bank = 100 debits;
bank = bank + 200 debits;
char my_bal[((unsigned short)-1)];
sprintf(my_bal, print_accounting("bal:"), bank);
char write_file[((unsigned short)-1)];
write_file[NULL] = 0;
strcat(write_file, "@echo ");
strcat(write_file, my_bal);
// strcat(write_file, "\n"); -- Wont work --
strcat(write_file, " > c:\\SAP_replace\\bal.txt");
system(write_file);
return 0;
}