gpt4 book ai didi

c++ - 用 C (mbed) 将字符写入文件?

转载 作者:太空宇宙 更新时间:2023-11-04 01:45:36 26 4
gpt4 key购买 nike

这是我的代码 C/C++ 代码,用于将字符写入文件。

#include "mbed.h"

Serial pc(USBTX, USBRX);
char c;
char *cha = &c;

int main() {
FILE* WriteTo = fopen("/local/yourtext.txt", "w");

pc.printf("Write something and then press enter when finished...\n\r");

while (c != '\n') {
c = pc.getc();
pc.printf(cha);
fputc(c, WriteTo);
}

fclose(WriteTo);

pc.printf("File write successfull.\n\r");
}

问题是它在我的 LPC1768 上不起作用。它只接受一个字符,然后我就无法再输入了。我尝试了其他一些方法,但我尝试的所有方法都不允许我写入文件。

我还想知道 getc() 在我使用 putc 后是否清空。它对我可以写的字符数有限制吗?

最佳答案

pc.printf(cha);

printf 需要 format 参数为 null 终止 char *。但是您通过调用未定义的行为传递了非 null 终止的 char *

使用:

pc.printf("%c", *cha); //Or pc.printf("%c", c);

关于c++ - 用 C (mbed) 将字符写入文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54401232/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com