i am unable to use "delete" and "free" on dev shed c++. i wonder whether its related to some header file. please help.
This is a discussion on using delete and free within the C Programming forums, part of the General Programming Boards category; i am unable to use "delete" and "free" on dev shed c++. i wonder whether its related to some header ...
i am unable to use "delete" and "free" on dev shed c++. i wonder whether its related to some header file. please help.
Can you post the simplest example which demonstrates the problem, and the exact error message you are getting?
bit∙hub [bit-huhb] n. A source and destination for information.
i get 2 error messages in line number 75:"delete"undeclared and syntax error before"temp"Code:/*c program to represent a queue as a singly linked list*/ #include<stdio.h> #include<conio.h> #include<stdlib.h> struct node { int data; struct node *link; }; typedef struct node node; void buildQueue(node *,int ); void display(node *); void deleteQueue(node *); int main() { node *start; start=NULL; buildQueue(start,10); buildQueue(start,20); buildQueue(start,30); buildQueue(start,40); display(start); deleteQueue(start); deleteQueue(start); display(start); getch(); return 0; } void buildQueue(node *root,int data) { node *newnode; newnode=(node *)malloc(sizeof(node)); newnode->data=data; newnode->link=NULL; if(root==NULL) { root=newnode; } else { newnode->link=root; root=newnode; } } void display(node *root) { while(root!=NULL) { printf("%d",root->data); root=root->link; } } void deleteQueue(node *root) { node *temp,*prev; temp=root; while(temp->link!=NULL) { temp=temp->link; prev=temp; } prev->link=NULL; delete temp; }
Eh, delete, as used in this context, is a C++ keyword, not C.
C + C++ Compiler: MinGW port of GCC
Version Control System: Bazaar
Look up a C++ Reference and learn How To Ask Questions The Smart Way
Code:void deleteQueue(node *root) { node *temp,*prev; temp=root; while(temp->link!=NULL) { temp=temp->link; prev=temp; } prev->link=NULL; delete temp; <--- free(temp); }