Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Turbo C++ +我的总线号上的增量为2,请帮助我,不能使用任何编译器,只不过是Turbo C++_C++_Scanf_File Handling_Turbo C++ - Fatal编程技术网

Turbo C++ +我的总线号上的增量为2,请帮助我,不能使用任何编译器,只不过是Turbo C++

Turbo C++ +我的总线号上的增量为2,请帮助我,不能使用任何编译器,只不过是Turbo C++,c++,scanf,file-handling,turbo-c++,C++,Scanf,File Handling,Turbo C++,请帮助如何增加公交车号-仅限2路。短暂性脑缺血发作 请帮助如何增加公交车号-仅限2路。短暂性脑缺血发作 //%*c是什么意思?//打开文件进行附加/更新,从一开始就打开它进行读取 #include<stdio.h> #include<conio.h> int main() { clrscr(); char Driver[40] ,From[10], To[10]; int BUS=0; FILE *sfile; if ((sf

请帮助如何增加公交车号-仅限2路。短暂性脑缺血发作 请帮助如何增加公交车号-仅限2路。短暂性脑缺血发作
//%*c是什么意思?//

打开文件进行附加/更新,从一开始就打开它进行读取

#include<stdio.h>
#include<conio.h>

int main()
{
    clrscr();

    char Driver[40] ,From[10], To[10];
    int BUS=0;

    FILE *sfile;
    if ((sfile = fopen("c:\\bus.txt", "a+")) == NULL)
        BUS = 1;
    else
    {
        do
        {       
            fscanf(sfile,"%i %[^/]%*c %[^/]%*c %[^/]%*c", &BUS, Driver, From, To);
        }
        while (!feof(sfile));
        BUS += 1; //also tried BUS = BUS + 1; but no go//
    }
    printf("BUS No.: %04i", BUS); //here display shows up until 0002 only.//
    printf("\nDriver: ");
    fflush(stdin);
    gets(Driver);
    printf("Route\n");
    printf("From: ");
    gets(From);
    printf("To: ");
    gets(To);
    printf("\nRecord saved!");
    fprintf(sfile,"%i %s/ %s-%s\n", BUS, Driver, From, To);
    fclose(sfile);

    getch();
    return (0);
}
然后车就满了。之后增加可能是一个实验

fopen("c:\\bus.txt", "r")
我刚刚添加了斜杠=%s/-%s/\n总线、驱动程序、From、To;
谢谢大家

您必须检查scanf的结果,如果失败则采取措施。别再这样了。可能是旧版本的Turbo C不支持%[也不做FFLUSTHSTDIN。不要使用GET。发布一个显示问题的最小例子,除去所有其他的CRUD。然后输入导致问题的输入文件。什么是GET选项?我使用的是Turbo C++ DOS框,%。[受支持。我每次运行它时都会尝试添加信息,因此我需要它在fscanf之前是a+调用倒带。但是仍然在做同样的事情。你能在scanf:printfBUS:%i-%s\n,BUS,Driver;?循环扭曲了清晰的视图。是的,它实际上会在文件中显示输入。但它只会循环两次,当我运行它时,它会自动倒带或者第三次,只是一个黑屏。
fprintf(sfile,"%i %s/ %s-%s\n", BUS, Driver, From, To);