C :: Circular Queue Using DLL With Globally Declared Pointers Not Being Properly Initialize
Jan 29, 2014
I have a circular queue using DLL which is using globally declared pointers. The problem now is that it is not being initialize properly or being cleared thus my code is not working as expected.
In my code you will be asked how many nodes do you wish to enter "i made 2 default for now", after that you may then add or delete the node. add only works now since delete is still on progress.
When you add the nodes "2 nodes by default" the program will only record the latest input so if i were to input 1 and 2, only 2 will be displayed. I know that this maybe because of my *first and *last variables not being initialize properly.
How should i really work with global pointers? Also im really new to project file programming and not a fan of pointers or linked list at all.
main.c
Code:
void main(){
int ch, number, numdum = 0;
n *new, *ptr, *prev, *first, *last;
first = NULL;
last = NULL;
clrscr();
printf("Enter number of nodes: ");
scanf("%d", &number);
[Code] .....
View 5 Replies
ADVERTISEMENT
Mar 15, 2013
I currently have globally declared arrays, which are accessed by multiple functions. I want to turn the program so that the arrays are no longer globally declared, but are passed to functions by reference.
I have one problem with passing the arrays: I found that, through debugging, I HAVE TO resize the array when I pass it by reference. For instance, I was using int a[10] when it was globally declared, when it is passed by reference with size 10, it does not work, instead it should be higher than 10 (certain number). Why is this happening? I do not get it...
View 6 Replies
View Related
Mar 4, 2014
I need writing my header files for my program of hangman. I've written what I could, but when I try parts out on their own to see if they work, I get errors. I haven't written my driver yet since I wanted to get this header working first. The first function needs to take the name of the file and read in its contents into the globally declared array. The second function takes no arguments and returns a word from the word list chosen at random. I guess my question is, would what I have so far work, or am I completely off? Here's what I have so:
randword.h
#ifndef _randword_h
#define _randword_h
//static char words[100][50];
/*
*Function: InitDictionary
*This function reads in the dictionary of words and puts them into an array. */
void InitDictionary(void);
[Code] ....
View 14 Replies
View Related
Oct 6, 2013
I am stuck with how to make a circular queue that are based on a struct. Have been reading about the implementation but cant really understand it fully. Here is what i got so far.
Code:
#define SIZE 10
typedef struct {
char reg;
char brand;
int modelyear;
int mileage;
[Code] .....
View 8 Replies
View Related
Oct 31, 2014
I want to write a program where one core (core 0) will fill the FIFO and other core (core 1 ) will delete the data from FIFO.
Core 0:
I create a fifo
Code:
struct node
{
int info;
struct node *ptr;
}*front,*rear,*temp,*front1;
And my en-queue function is in core 0 and writing to specific memory location..(which works perfectly)
Code:
void enq(int data)
{
if (rear == NULL)
{
rear = (struct node *)malloc(1*sizeof(struct node));
rear->ptr = NULL;
rear->info = data;
front = rear;
[Code] ....
Now the problem is in the core 1. Here I am unable to read the values from the specific memory location. I am getting garbage value. Where I am doing some stupid error.. I did not understand
Code:
(front->ptr) = (unsigned int *) memory_location;
When I print the (front->ptr) it shows correct memory address but inside the De-queue function in core 1, I am getting wrong value..
Code:
int deq(int buf[n]) {
front1 = front;
printf("Val %d ", front->info); // showing wrong value
if (front1 == NULL) {
printf("
Error: Trying to display elements from empty queue");
return 0;
[Code] ...
View 8 Replies
View Related
Jun 28, 2013
/* Implementation of a circular queue of Array containg names.. */
# include <stdio.h>
# include <conio.h>
# include <stdlib.h>
# include <string.h>
# define QSIZE 5
typedef struct{
[Code] ....
I changed my code. but whenever i typed in the ILoveBacolod it takes it as a whole, and if i deleted it deletes the string not the letter. for example:
Enter String: ILoveBacolod
Enter a command: Delete (D)
Output: LoveBacolod
Enter a command: Delete (D)
Output: oveBacolod
Enter a command: Add (A)
Enter a character: z
Output: oveBacolodz
View 2 Replies
View Related
Mar 1, 2015
There appears to be some kind of error in by removeMin() function. Inserting items seems to work just fine but attempting to remove any items gives me the error "vector subscript out of range".
Here is my SortedPQ class... Below it you will find the quicksort implementation, in case looking at it is necessary.
template <class Type>
class SortedPQ {
private:
int front;
int rear;
vector<Type> V;
public:
SortedPQ(void) : front(-1), rear(-1), V(0){}
[Code] ....
View 1 Replies
View Related
Dec 18, 2012
I've been making a project that requires different files to have access to objects declared in other files such that circular dependencies are created. I've done some research and discovered that pointers and forward declarations should be able to fix this.
Example:
File 1 declares variable x, must edit x and y
File 2 must edit x and y, declares variable y
I know this isn't the best example, as you could probably declare x and y in the same file, but please suffice it to say that I'm unable to do that in my project.
View 10 Replies
View Related
May 21, 2014
I am trying to initialize an array of pointers to an array of characters, I can do it in 3 lines but I really want to do it in one line at the same time keeping the #define.
3 lines initialization (can compile)
======================
#define A 1
#define B 2
char row1[] = {A|B, B, A};
char row2[] = {B, A};
char *test[]= {row1, row2};
1 line initialization (failed)
===============================
char *test[] = { {A|B, B, A}, {B, A} }; // <- how do i do this??
I do not want this because it waste ROM space
=============================================
char test[][3] = { {A|B, B, A}, {B, A} };
View 18 Replies
View Related
Feb 20, 2013
I have a paradigm in a loop of queues of a vector,if a condition is true,increase sizes of the queue of that particular queue in the loop of queues, if condition is false, the queuesize is left as such in loop of queues. After this operation i need to search the queue sizes of all queues and enqueue in the shortest queue.
I want to do something like the code given below
#include <vector>
#include <queue>
int min_index = 0;
std::vector<std::queue<int> > q
std::size_t size = q.size();
[Code] ....
How to implement this logic?
will q[i].size=q[i].size+5 increase the queuesize by 5 for the ith queue?
View 12 Replies
View Related
Jan 30, 2013
struct x
{
y *GetY(); //error: what is "y"?
struct y
{
};
};
Why does GetY have to be declared after struct y is declared? I thought order of class members in C++ did not matter? Does it have to do with the way parsing is done?
EDIT: It also doesn't work if I typename x::y *GetY();, which makes even less sense to me.
EDIT: It works if I forward declare, but this goes against everything I know about C++ classes...
View 6 Replies
View Related
Jul 14, 2013
Can you declare a stack globally?
Code:
stack< int > stk;
View 4 Replies
View Related
Aug 8, 2013
I have a class like this:
file one :
Code:
class X : public Y {
public:
virtual int query(int, int);
// constructor
X(int, int);
[Code] .....
And i construct my M and Nby calling :
Code:
X Y(a,b); and afterwords by calling
Code:
result = Y (c,d) i get my result.
The problem is I need to be able to call result = Y (c,d) from outside my main function and get results but i don't know how to do this. So I want to be able to do something like this.
Code:
#include <iostream>
int g;
void func2(int *h){
*h = g;
[Code] .....
View 7 Replies
View Related
Oct 10, 2013
If I need a static pointer to a class that is used globally(multiple files), and I only want to allocate memory once.
One way is to create a function that returns a static pointer of type class and call it where ever you need this pointer. My question is there another way to do this like with a header file and include the header file where you need to use the object of type class.
static class* function
{
static class c;
if (c == NULL)
{
c = new class;
}
return c
}
View 1 Replies
View Related
Jan 30, 2014
I think there is no always need of keyword extern in order to declare variables globally. Is it right?
For example I can declare a variable globally in one file and use it in some other provided that I have included the last one file ( that has the declaration of the variable of course) and compile these files together :
gcc -c f1.c f2.c for example
View 6 Replies
View Related
Jan 29, 2013
I need to circular right shift a cstring in C++
Let's say I have unsigned char test[10] = "HELLO!!!"; How would I go about circularly shifting this to the right? Inline assembly instructions would be ok too
View 6 Replies
View Related
Aug 30, 2013
Any algorithm or function to rotate a displayed circle. To turn it 360 degrees like a car-tire. (It's needed to turn a turn-table in a model-railrod control program) .....
View 14 Replies
View Related
Mar 15, 2013
It's compiling but it's not working, it enters in stack overflow. It's a Doubly Linked List I'm compiling in Visual Studio. I think there's nothing wrong with this declaration, but there's just might be it:
class ListItem;
class List {
public:
ListItem *firstItemRef;
[Code] .....
View 7 Replies
View Related
Jan 17, 2015
I need to create such a function that the content of the first is put into the second, the content of the second into the third and the content of the third into the first.
For example, output should be like this
3
2
1
But the code below prints out:
1
2
2
Where am I making a mistake?
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <ctype.h>
[Code]....
View 2 Replies
View Related
Jul 30, 2014
Is there a way to make a circular progress bar in WPF without using another library or NuGet Package?
Like a tutorial on how to make it from scratch?
Right now, I'm using the existing ProgressBar UserControl but it looks horrible especially after I change the Foreground color from Green to DarkBlue.
View 6 Replies
View Related
Jan 23, 2014
I have ran into some sort of Circular dependency between two classes.
Forward declaration doesn't work as I'm allocating the memory for pointer array of Student and it requires the default constructor.
P.S I'm aware I haven't written the BIG 3, it's an incomplete code. Just want to know how to resolve this dependency.
class Student;
class Course {
char *name;
Student *s[3];
[Code].....
View 14 Replies
View Related
Nov 7, 2013
Today I faced a problem where I had circular dependency in my template arguments. I was trying to make a class hierarchy similar to:
template<class BType>
class A_base {
public:
BType* getB();
};
[Code] .....
Basically I had objects that were of type A<B<A<B<...
Basically I have a tree like structure of heterogeneous types that must facilitate two-way interactions where A's can call B's and B's can call A's. This structure is useful in many contexts the difference is the methods A and B provide are different in each of these contexts. Instead of adding the getA and getB and all the other connectivity methods in every version of A and every version of B, I wanted to create a base class that managed this automatically.
Another piece of advice was break up your code so there is a forward-only and backwards-only dependent types. This is not a complete solution because the two cannot know about the other and this does not really facilitate arbitrary two-way communication (where A calls B then B calls A back). It also makes the code more complicated in that I have two sets of objects and interfaces.
So the solution was to make the template arguments specific to the things I wanted to be flexible. The connectivity interface of A_base and B_base should be constant. Hence that cannot be in the template parameter. It was merely the traits that I wanted to make flexible so... I came up with this solution:
#include <iostream>
template<class aTraitType,class bTraitType>
class A;
template<class aTraitType,class bTraitType>
class B;
[Code] ....
Now this compiles and works great. The problem is that aObj and bObj cannot call their opposite within a trait method because print() does not know anything about the connectivity. So the solution there was to make traits an abstract base class. Then magically everything works!
#include <iostream>
template<class aTraitType,class bTraitType>
class A_base;
template<class aTraitType,class bTraitType>
class B_base;
[Code] .....
So this outputs the following. Clearly there is two-way communication!
Class A is not connected to B
Class B is not connected to A
Class A at 0x7fff25d1aa10 reporting for duty
Class B at 0x7fff25d1aa00 reporting for duty
Class B at 0x7fff25d1aa00 reporting for duty
Class A at 0x7fff25d1aa10 reporting for duty
Class A at 0x7fff25d1aa10 reporting for duty
Class B at 0x7fff25d1aa00 reporting for duty
View 6 Replies
View Related
Jan 30, 2015
I've been making a circular linked list and I'm trying to assign each list a "name" and its next "link" but when I run my code it crashes.
Soldier *Head;
Head = NULL;
string names[] = {"Arman","Bogut","Castro","Damascus","Elene"};
for (int i = 0; i < 5; ++i) {
[Code] .....
View 4 Replies
View Related
Apr 28, 2015
I have this program. I am trying to do this Circular List but i think something going wrong. The first of all is the list.The second is if my code for delete and select function are correct and the third i would like my program getting a "n" number of names and then make the circural list then print it and then when i select a number delete every node until give us the only one left.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define SIZE 10
#define NUM_PER_LINE 6
typedef struct node {
char name[SIZE];
struct node * next;
[Code] .....
View 1 Replies
View Related
Feb 27, 2014
When I run this in main it gives me a windows error message. I believe it has something to do with my insertAtEnd function but I've gone over it a million times....
#include<iostream>
#include<string>
#include<vector>
#include"RhymeGame.h"
using namespace std;
Game::Game() {
head = NULL;
[Code] ....
View 3 Replies
View Related
Dec 2, 2014
Should my if statement be
if (tail== NULL) or if(tail->next == tail) ?
View 4 Replies
View Related