C 中对 Gotoxy 的未定义引用

2023-11-30

我正在尝试用 C 语言编写一个程序(Windows 中的 code::blocks)。 我添加了下面的头文件,它编译时没有错误,但是当运行代码时,它会抛出一个错误,未定义对 Gotoxy 的引用。 找到完整的代码。 只要我有 Gotoxy 语句,就会出现错误。

# include<stdio.h>
# include<conio.h>
# include<malloc.h>
# include<stdlib.h>
# include<windows.h>
#include<dos.h>
struct node
{  int data;
    struct node *link;
};
void append(struct node **,int);
void in_begin(struct node **,int);
void del(struct node **,int);
void in_middle(struct node **,int,int);
int count(struct node *);
void display(struct node *);
char ans;
int main()
{   struct node *p;  /* p can be said as the head or a start ptr */
     p=NULL;
     /* Printing the menu */
     int num,loc;
     char choice;
     do
     { //clrscr();
        printf("PROGRAM TO IMPLEMENT SINGLY LINKED LIST ");
        printf("\n=====================================");
        printf("\n\n1.Create \\ Appending The List");
        printf("\n2.Insert Node At Begining");
        printf("\n3.Insert Node In Middle");
        printf("\n4.Deleting a  Node");
        printf("\n5.Counting The No Of Nodes");
        printf("\n6.Displaying the list");
        printf("\n7.Exit");
        oper:
        gotoxy(1,15);printf("                                          ");
        gotoxy(1,11);printf("\n\nEnter ur Choice : ");
        choice=getch();
        switch(choice)
        {
            case '1':
            //  char ans;
              do
             {  printf("Enter any number : ");
                 scanf("%d",&num);
                 append(&p,num);
                 printf("Enter more (y/n) :");
                 fflush(stdin);
                 ans=getchar();
              }while(ans !='n');
             break;
             case '2':
             printf("Enter The Data : ");
             scanf("%d",&num);
             in_begin(&p,num);
             break;

             case '3':
             printf("\nEnter The Position :");
             scanf("%d",&loc);
             printf("\nEnter The Data : ");
             scanf("%d",&num);
             in_middle(&p,loc,num);
             break;

             case '4':
             printf("\nEnter The Data u Want To Delete : ");
             scanf("%d",&num);
             del(&p,num);
             break;

             case '5':
             printf("\nThe No Of Nodes Are %d",count(p));
             getch();
             break;

             case '6':
             display(p);
             getch();
             break;

             case '7':
             printf("\n\nQuiting.......");
             getch();
             exit(0);
             break;

             default:
             gotoxy(1,15);printf("Invalid choice.Please Enter Correct Choice");
             getch();
             goto oper;

        }

     }while(choice !=7);
return 0;
}

void append(struct node **q,int num)
{   struct node *temp,*r;
     temp = *q;
     if(*q==NULL)
     {   temp = (struct node *)malloc(sizeof(struct node));
          temp->data=num;
          temp->link=NULL;
          *q=temp;
     }
     else
     {  temp = *q;
         while(temp->link !=NULL)
         {  temp=temp->link;
         }
         r = (struct node *)malloc(sizeof(struct node));
         r->data=num;
         r->link=NULL;
         temp->link=r;
     }
}

void display(struct node *q)
{     if(q==NULL)
        {  printf("\n\nEmpty Link List.Can't Display The Data");
            getch();
            goto last;
        }
      while(q!=NULL)
        {  printf("\n%d",q->data);
            q=q->link;
        }
     last:
     ;
}

int count(struct node *q)
{  int c=0;
    if(q==NULL)
    { printf("Empty Link List.\n");
      getch();
      goto last;
    }
    while(q!=NULL)
    {   c++;
         q=q->link;
    }
    last:
    return c;

}

void in_begin(struct node **q,int num)
{  struct node *temp;
    if(*q==NULL)
    {  printf("Link List Is Empty.Can't Insert.");
        getch();
        goto last;
    }
    else
    {   temp=(struct node *)malloc(sizeof(struct node));
         temp->data=num;
         temp->link=*q;
         *q=temp;  /* pointing to the first node */
     }
     last:
     getch();
}

void in_middle(struct node **q,int loc,int num)
{  struct node *temp,*n;
    int c=1,flag=0;
    temp=*q;
    if(*q==NULL)
    {  printf("\n\nLink List Is Empty.Can't Insert.");
        getch();
        goto last;
    }
    else
    while(temp!=NULL)
    {  if(c==loc)
        {  n = (struct node *)malloc(sizeof(struct node));
            n->data=num;
            n->link=temp->link;
            temp->link=n;
            flag=1;
        }
        c++;
        temp=temp->link;
     }
     if(flag==0)
     { printf("\n\nNode Specified Doesn't Exist.Cant Enter The Data");
        getch();
     }
     else
     { printf("Data Inserted");
        getch();
     }
     last:
     getch();
}

void del(struct node**q,int num)
{    if(*q==NULL)
      {  printf("\n\nEmpty Linked List.Cant Delete The Data.");
          getch();
          goto last;
      }
      else
      {
      struct node *old,*temp;
      int flag=0;
      temp=*q;
      while(temp!=NULL)
      {  if(temp->data==num)
          {   if(temp==*q)         /* First Node case */
                *q=temp->link;  /* shifted the header node */
                else
                old->link=temp->link;

                free(temp);
                flag=1;
            }
            else
            {  old=temp;
                temp=temp->link;
            }
         }
         if(flag==0)
            printf("\nData Not Found...");
         else
              printf("\nData Deleted...Tap a key to continue");
              getch();
        }
        last:
        getch();
      }

请帮我。


您遇到的问题与以下问题无关Code::Blocks,它与它使用的编译器(默认为 MinGW)有关,这是因为该函数不是标准的,并且没有在该编译器中实现。我不确定 Borland 是否还提供conio.h,但你可以尝试this one for MinGW.

看看这个http://projectsofashok.blogspot.in/2010/05/gotoxy-in-codeblocks.html

您还可以尝试下面的代码片段,这将在海湾合作委员会工作

#include<stdio.h>
//gotoxy function
void gotoxy(int x,int y)
{
printf("%c[%d;%df",0x1B,y,x);
}
main ()
{
gotoxy(25,50); //reposition cursor
printf("hello world"); //display text
}

您还可以看看NCURSES.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C 中对 Gotoxy 的未定义引用 的相关文章

  • Boost 错误代码参考

    有谁知道在哪里可以找到升压错误代码的参考 特别是 异步套接字处理程序返回的错误代码 Google 和 grep 头文件已调为空 我从 Linux 上的 asio error hpp 中提取了错误值 顺便说一句 我仅使用标头 asio 而不是
  • 插入多重集中:在该值第一次出现之前而不是最后一次出现之后

    正如标题所示 multiset 在所有相同值的范围末尾插入一个值 例如 在多重集中插入 21 2 2 3做到了1 2 2 new 2 3 如何在所有相同值的范围开头插入新值 例如 在多重集中插入 21 2 2 3应该使1 new 2 2 2
  • 寻求有关 cs50“现金”问题集的 C 贪婪算法的帮助[已关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 目标是创建一种算法 该算法接受输入并给出从输入中减去值 25 10 5 1 的次数的输出 代码需要以尽可能贪婪的方式执行此操作 尽可能获取最
  • asm、asm 易失性内存和破坏性内存之间的区别

    在实现无锁数据结构和定时代码时 通常需要抑制编译器的优化 通常人们使用asm volatile with memory在 clobber 列表中 但有时你会看到asm volatile或者只是一个简单的asm破坏记忆 这些不同的语句对代码生
  • 如何防止 Parallel.ForEach 循环在运行时更改任务数量?

    我正在使用Parallel ForEach循环做一些工作 我用localInit像这样 localInit gt new foo new Foo bars CreateBars 根据文档 https learn microsoft com
  • 改装和授权标头

    目前 我正在向我的请求添加授权标头 如下所示 文件 SomeFile cs public interface ITestApi Get api test id Task
  • “双免”是什么意思?

    正如标题所暗示的那样 我是 C 语言的新手 并且很快就会有期中考试 我目前正在修改过去的论文 一个反复出现的主题是双重自由问题 我理解就是调用的过程free 在同一个内存位置两次 但我有几个问题我不能 100 确定如何回答 问题1 C中双重
  • 使用 MemoryCache 而不是普通的旧 Dictionary 的令人信服的理由是什么

    我刚刚遇到内存缓存 http msdn microsoft com en us library system runtime caching memorycache aspx这是 NET 4 中的新增功能 我知道如果你想的话它会很有用 限制
  • 在实体框架中不使用 Dispose 或 using()

    我一路上正在编写一个网络应用程序并学习实体框架 如果我做错了什么 我很好奇 我在查询时没有使用过 dispose 或 using 语句 我的存储库示例 public User GetUserById int sessionId var us
  • 如何在运行时统一捕捉两个对象?

    这是 3D 模型 我想将另一个像这样的模型连接到顶部的银色连接器 并将另一个模型连接到右侧 所以请帮助我捕捉它 https i stack imgur com qoWwl png我想知道如何在运行时将两个 3D 对象对齐在一起 即 在 玩
  • 在多个线程中添加和删除时 List 中的 null 值

    我知道 C System Collections Generic List 对象不是线程安全的 但我想知道为什么这段代码会生成空值 Task Run gt for var i 0 i lt 10 i var str Test i list
  • OpenFileDialog 中的多个文件扩展名

    如何在一组中使用多个文件扩展名OpenFileDialog 我有Filter BMP bmp GIF gif JPG jpg PNG png TIFF tiff 我想创建组 以便 JPG 为 jpg 和 jpeg TIFF 为 tif 和
  • Pythonlibs3 CMake 和 macOS

    更新2 将以下两行添加到我的 CMake 文件中时 成功找到了 python 3 及其库 这只在终端中工作的原因是因为 CLion 使用其捆绑版本的 CMake 3 6 3 而我的终端使用的更新版本 3 7 2 正确找到了 python F
  • 如何打开 Outlook 已接收和阅读电子邮件

    我们有 5 个人 使用同一封电子邮件通过 Outlook 回复客户 我想设计一个程序来打开所有已发送的电子邮件 阅读它们 打开它们 找到第一个人的签名 并在他 她的计数器中添加一个数字 以便我可以得出一些统计数据 关于如何打开 Outloo
  • Web API 2 c# 中的 Google reCaptcha

    我有一个 ASP NET Web API 2 项目 我正在尝试从表单中读取 Google Captcha 我尝试了这段代码 public string Post FoundingRequest model var response Requ
  • 如何在 C 中将 int 和数组保存在共享内存中?

    我正在尝试编写一个程序 让子进程在 Linux 上相互通信 这些进程都是从同一个程序创建的 因此它们共享代码 我需要它们能够访问两个整数变量以及一个整数数组 我不知道共享内存是如何工作的 我搜索过的每一个资源除了让我困惑之外什么也没做 任何
  • SQlite 查询 - 如何检索多列数据?

    我很难在网上找到一个关于使用 xcode 和 cocos2dx 从 SQlite DB 获取多个值的工作示例 这是我的sql查询 char sql query 100 sprintf sql query SELECT FROM SQList
  • 系统.安全.加密与 PCLCrypto

    我们正在删除系统中的许多共享功能并将其移植到 PCL 库中 我在使用 PCLCrypto 时遇到问题 我正在获取数据库中的一些现有数据 并尝试使用相同的算法对其进行解密 我得到了值 但末尾有 16 个额外字节 这些字节都是垃圾 参见下面的代
  • 如何用纯色填充位图?

    我需要使用唯一的 RGB 颜色创建 24 位位图 分辨率 100x100 像素 并将生成的图像保存到磁盘 我目前使用的是SetPixel http msdn microsoft com en us library 6c7eyzyb aspx
  • 从 C# 调用 C++ DLL

    我想使用 C 中的 C DLL C DLL 是win32 控制台应用程序 我已成功调用它 并希望在 C 中处理来自 C 的数据 然而 C 应用程序在执行 DLL 后退出 即这一行 GetArrayFromDLL 我是 C 和 Visual

随机推荐

  • 我们如何按类指定 jQuery 验证插件的规则?

    The jQuery 验证插件效果很好并且非常容易使用 selector validate 只需设置 CSS 类 如 必需的电子邮件 就会显示默认消息 但是 我需要自定义消息 该文档说您可以使用元素的键值对及其相应的消息来指定规则 sele
  • 如何在 Pygame 中使用 Sprite Collide

    我正在制作一个非常简单的游戏 小鸟 玩家 必须躲避岩石 如果它被岩石击中 你就会失败 我正在尝试使用 pygame sprite collide rect 来判断它们是否接触 但我似乎不知道如何正确使用它 这是我的代码 import pyg
  • Android - 创建进度对话框

    我是安卓开发新手 我想开发一个dialog with a progressbar在我的应用程序中 当我点击搜索按钮时dialog应与出现progressbar 显示在切换到另一个之前进度正在进行中activity 请用示例代码建议我 Use
  • 使用 Visual Studio 2008 编译 php 扩展,MODULE ID 与 php 不匹配

    使用 VC9 2008 和 VC10 2010 编译我自己的 php 扩展后 使用以下步骤 http blog slickedit com 2007 09 creating a php 5 extension with visual c 2
  • 使用低级键盘钩子更改键盘字符

    我正在创建自定义键盘布局 作为开始步骤 我想让用户按下一个键 让我的键盘钩子拦截它 并输出我选择的不同键 我找到了这个键盘挂钩代码 我试图根据我的目的对其进行稍微修改 http blogs msdn com toub archive 200
  • 在进程中断期间使用 python ctypes 时高延迟背后的原因

    在调查 Python 代码库中的关键路径时 我们发现 ctypes 在延迟方面的行为是相当不可预测的 我们的应用程序的更多背景 我们有很多进程 每个进程都通过共享内存进行通信 我们利用 python 库multiprocessing Raw
  • iPhone 如何通过无线或蓝牙访问另一台非 iPhone 设备?

    我试图弄清楚 iPhone 是否可以通过无线或蓝牙连接到另一台非 iPhone 设备 但发现了相互矛盾的信息 我发现的大部分内容都是在 SDK 3 0 版本发布之前发现的 当时这肯定是不可能的 查看堆栈溢出问题 例如iPhone 3 0 S
  • 将 HTTP 请求重定向到 HTTPS 的推荐方法

    我对如何将所有 http 页面重定向到 https 有一些疑问 我看到有人告诉我们要像这样重写reply 阿帕奇说要做this way 任何人都可以向我解释进行此更改的推荐方法是什么 将 http 重定向到 https 的唯一安全方法是使用
  • 如何调和独立的 head 和 origin/master?已经检查了旧的哈希值

    介绍和搜索 所以我认为我犯了一个严重的错误 我很担心 我已经解析了论坛中的独立负责人 我已经接近找到答案 但场景太具体 不适用于我所在的地方 如果您找到可以回答我的问题的特定主题 请链接我 例如 如何使分离的 HEAD 与 master o
  • 如何在knitr R代码块中间插入markdown?

    例如 我想在以下代码块中的两个图之间插入一个中断 而不将其分解 r plot 1 100 1 100 plot 1 100 1 100 这样的结果是这样的 r plot 1 100 1 100 br r plot 1 100 1 100 I
  • switch(enum) 后“缺少返回语句” - 为什么?

    编译器声称末尾缺少 return 语句MyClass parse 这是代码 package de hs rm safelyovertaken ble import android support annotation NonNull imp
  • 如何使用 SA_OAuthTwitterEngine 在没有 PIN 的情况下从 iPhone 发布推文?

    我正在开发一个 iPhone 应用程序 它将推文发送到 Twitter 为此 我使用 SA OAuthTwitterEngine MGTwitterEngine 类 我将应用程序注册到 www twitter com apps 并传递消费者
  • 注意:尝试获取非对象的属性

    我正在学习一些 PHP 它应该打印 0 但是我收到错误 注意 尝试获取非对象的属性 JSON 字符串外部的括号使其成为数组内部的对象 您可以通过指定所需的数组成员来访问该对象 obj 0 gt qty 或者更改您的 json 字符串 以便它
  • 基于 REST API 令牌的身份验证

    我正在开发一个需要身份验证的 REST API 由于身份验证本身是通过 HTTP 上的外部 Web 服务进行的 因此我推断我们将分配令牌以避免重复调用身份验证服务 这让我想到了我的第一个问题 这真的比要求客户端在每个请求上使用 HTTP 基
  • 如何使用 iOS API 将 KML 文件 URL 加载到 Google 地图中?

    我将 Google 地图嵌入到 iPhone 地图的视图控制器中 我可以使用以下方法创建我的地图 GMSCameraPosition camera GMSCameraPosition cameraWithLatitude 39 93 lon
  • 如何在 MATLAB 中隐藏图形的线条,使其不会超出框架

    有什么方法可以隐藏溢出 以便线条不会像附图中那样从框架中突出 plot sin 0 0 1 10 LineWidth 10 您可以设置轴剪裁风格 to rectangle plot sin 0 0 1 10 LineWidth 10 set
  • PHP PDO 无法获取 OUT 参数值

    我刚刚开始将 PHP PDO 与 MySQL 存储过程一起使用 但我对如何从过程调用中获取 OUT 参数有疑问 我查看了许多类似的 stackoverflow 主题 但不幸的是我找不到解决我的问题的方法 详细信息如下 该过程采用 1 个输入
  • Python 字符串搜索,无论字符顺序如何

    我想创建一个应用程序 检查用户输入的单词是否包含来自单独文本文件的单词 单词 例如 输入 teeth 单独文件包含单词 eet 无论其序列如何 它都应该返回 True那些角色 我看了这个线程匹配正则表达式中任意顺序的所有字符这很酷 因为它使
  • 我可以使用 WPF 窗口中的 XamlReader.Load 或 InitializeFromXaml 来进行窗口定义吗?

    我想生成一些将包含在 WPF 应用程序中的库代码 根据情况 图书馆可能会弹出一个窗口 我可以在 XAML 中定义窗口 但我想将 XAML 视为模板 在运行时 在创建窗口以便可以显示它时 我想用运行时定义的值替换 Xaml 模板中的某些标记
  • C 中对 Gotoxy 的未定义引用

    我正在尝试用 C 语言编写一个程序 Windows 中的 code blocks 我添加了下面的头文件 它编译时没有错误 但是当运行代码时 它会抛出一个错误 未定义对 Gotoxy 的引用 找到完整的代码 只要我有 Gotoxy 语句 就会