Flushall and clrsrc – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Flushall and clrsrc – C / C++ – Fórum – Programujte.comFlushall and clrsrc – C / C++ – Fórum – Programujte.com

 

dry920
Duch
28. 1. 2015   #1
-
0
-

Mám program, který je vložen níž, proč mi to ale nefunguje?? Píše undefined reference to flushall a nebo clrsrc... Prosím o radu co s tím? 

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

typedef struct employee
{
  char name[20],ph[20];
  int empid,salary;
}emp;

void insert(emp *p,int n)
{
  p=p+n;
  printf("\nenter name of emplyee:");
  flushall();
  gets(p->name);
  printf("\nenter employee id:");
  scanf("%d",&p->empid);
  printf("\nenter salary of the emplyee:");
  scanf("%d",&p->salary);
  printf("\nenter phone no of the emplyee:");
  flushall();
  gets(p->ph);
}

void display(emp *p,int n)
{
  int i;
  printf("\nEMP ID\tNAME\tSALARY");
  printf("\n----------------------------------------");
  for(i=0;i<n;i++)
  {
    printf("\n%d\t%s\t%d\t%s",p->empid,p->name,p->salary,p->ph);
    printf("\n--------------------------------------");
    p=p+1;
  }
}

void search(emp *p,int n)
{
  int i,id;
  printf("\nenter employee id to be searched:");
  scanf("%d",&id);
  for(i=0;i<n;i++)
  {
    if(p->empid==id)
    {
      printf("\nRecord present");
      printf("\n%d\t%s\t%d\t%s",p->empid,p->name,p->salary,p->ph);
      return;
    }
  }
  p=p+1;
  printf("\nrecord not present");
}

void modify(emp *p,int n)
{
  int i,id;
  printf("\nenter employee id to be modify:");
  scanf("%d",&id);
  for(i=0;i<n;i++)
  {
    if(p->empid==id)
    {
      printf("\nrecord present");
      printf("\ngive new name:");
      flushall();
      gets(p->name);
      printf("\nenter new salary:");
      scanf("%d",&p->salary);
      printf("\nenter new phone no:");
      flushall();
      gets(p->ph);
      printf("\nrecord modified");
      return;
    }
    p=p+1;
  }
  printf("\nrecord not present");
}

int delrec(emp *p,int n)
{
  int i,id;
  printf("\nenter employee id to be deleted:");
  scanf("%d",&id);
  for(i=0;i<n;i++)
  {
    if(p->empid==id)
    {
      break;
    }
  }
  if(i==n)
  {
    printf("\nemployee id not present");
  }
  else
  {
    printf("\nemployee id present and deleted");
    while(i<n)
    {
      *p=*(p+1);
      p=p+1;
    }
    n=n-1;
  }
  return(n);
}

void main()
{
  emp e;
  emp *p;
  int n=0,ch;
  clrscr();
  p=&e;
  while(1)
  {
    printf("\n1]Insert data\n2]display data\n3]search data\n4]modify data\n5]delete data\n6]exit");
    printf("\nenter your choice:");
    scanf("%d",&ch);
    switch(ch)
    {
      case 1:insert(p,n);
         n=n+1;
         break;
      case 2:display(p,n);
         break;
      case 3:search(p,n);
         break;
      case 4:modify(p,n);
         break;
      case 5:n=delrec(p,n);
         break;
      case 6:exit(0);
      default:printf("\nwrong choice");
    }
  }
}

Nahlásit jako SPAM
IP: 31.31.228.–
q
~ Anonymní uživatel
219 příspěvků
28. 1. 2015   #2
-
0
-

Obě jsou to nestandardní funkce. Vyhodit, nebo nahradit.

// quickfix pro visual studio
void flushall() { _flushall(); }
void clrscr() { system("cls"); }
Nahlásit jako SPAM
IP: 213.211.51.–
dry920
Duch
29. 1. 2015   #3
-
0
-

Pokud funkce vyhodím program mi nefunguje tak jak by měl! Jak by to tedy mělo vypadat?

Nahlásit jako SPAM
IP: 31.31.228.–
q
~ Anonymní uživatel
219 příspěvků
29. 1. 2015   #4
-
0
-

O tom dost pochybuju.

Jak si doplnit implementaci těch funkcí, tak abys dále v programu nemusel nic měnit, jsem ti napsal.

Nahlásit jako SPAM
IP: 78.156.159.–
dry920
Duch
29. 1. 2015   #5
-
0
-

Ajo, já jsem to nějak přehlídl. Dík :)

Nahlásit jako SPAM
IP: 31.31.228.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 11 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý