C :: Global Variable - Only Printf Works
Apr 20, 2013
Okay so I am programming an 8051 variant to interact with an SD card. In a separate initialization routine in SD_CARD.c I pull out the vital information of the card into global variables. I then call Menu() which is in another source file but includes a header file with all of the variables declared as extern. Now here is the weird, part this is from my Menu.c
printf("%u" , VOLUME_1_SECTOR);
if(VOLUME_1_SECTOR==16384)
printf("Correct");
else
printf("Incorrect");
Now the output of the first printf is 16384 but the conditional evaluates to false. If I put this code in SD_CARD.c (Where VOLUME_1_SECTOR is defined) the conditional evaluates to true. I am confused why the printf works correctly in Menu.c but not the conditional.
View 2 Replies
ADVERTISEMENT
Oct 25, 2014
I need to transform a local variable into a global variable so I can use it in one of my functions. I thought about passing the value as a parameter to this function but I can do this since the function is called inside the while loop and this variable counts how many times the while loop does (so the final value is outside the loop). Example to visualize better:
Code:
while(condition) {
function(parameter1, parameter2);
count = count + 1;
}
printf("%d
", count);
So, I need to transform the final value of "count" into a global variable. Can I do this?
View 5 Replies
View Related
Jul 10, 2014
I'm making a .json loader for a project that I'm working on, and to simplify things, I decided to make all the root attributes named in a separate file. Here's my problem: my loading function, Add(const char* id), works just fine when I pass it a string literal.
However, when I use a function that iterates through a vector list, even with the exact same definitions as the literal, it returns the error: std::out_of_range at memory location 0x0026fb30
I've stepped through it with the VS2010 debugger about a hundred times, checked against memory locations, and just have done everything I can think of, all to no avail..
The code, with data-checking omitted:
The std::map I'm adding to:
static std::map<const char*, Item*> *s_mItems;
Initialized as std::map<const char*, Item*> *Item::s_mItems;
Add() Function (Works by itself with a literal):
static bool Add(const char* id) {
...
std::string name = node.Get("name").ToString();
std::string desc = node.Get("description").ToString();
int rarity = StrToRarity(node.Get("rarity").ToString());
[Code] ....
AddList() function, where the program always breaks:
static void AddList(std::vector<std::string> list) {
for(std::vector<std::string>::iterator it = list.begin(); it != list.end(); it++) {
Add(it->c_str());
}
}
View 3 Replies
View Related
Dec 19, 2013
Expected output: 20
But what I got is: 22
Why. While calling sub function it should take the global variable am I right
insert Code:
#include <iostream>
using namespace std;
int a=0;
void sub()
[Code] ....
View 3 Replies
View Related
Sep 7, 2013
The problem that I want to make an array " vertextDegree [nbColours] " with " nbColours " elements in it ,but the "nbColours" unknown and I have to get it get it from a file .
Code:
int nbEdges,nbVetices, nbColours ;
typedef struct st_graphVertex {
int index;
int colour;
int val ;
int vertexDegree[nbColours]; // it won't work because nbColours unknown
// here and I want get it from file in the main
struct st_graphVertex *next;
t_edgeList *out;
}t_grapheVertex;
View 3 Replies
View Related
Sep 30, 2014
I want to make a destructor counter...So it needs to be outside that specific instance of the class. And i want to keep it hidden. I don't want to be able to access it from outside the class...I Don't want main.cpp to have access to this variable
Is there a way to do this?
static int destructorCount;
View 8 Replies
View Related
Jul 28, 2013
I have a small problem with my program. It is kinda a mess but I will try to explain you what I am trying to do. I have some threads. One of it, it attempts to detect a game client. So my code is sort of like that:
DWORD ProcessID; // The process ID of the game client
void test() {
char* text;
[Code]....
So basically, its like the variable changes, but only inside the thread... why does that happen?
View 15 Replies
View Related
Apr 28, 2015
I am getting this error while trying to compile my program:
It says that my variables "nome, cognome, eta..etc" are being used for the first time in my "inserisci" function.
I tought that I could just declare them as global in my structure like I did in my code, but apparently this doesn't work.
Do I really need to declare them again outside of my structure? Isn't there another way?
Here is my code:
#include <stdio.h>
#include "readline.h"
void inserisci(void);
struct impiegato{
char nome[20];
char cognome[20];
int eta;
[code].....
View 7 Replies
View Related
Oct 8, 2014
I have a .c file for each function of my program and i have .h,so how can I extern the following
in my main...
typedef int table[100][100];
how can I extern them in the .h and c files?
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
#include <unistd.h>
#define HEIGHT 100
#define WIDTH 100
[code]....
View 3 Replies
View Related
Jan 6, 2012
I am making two classes using the juce library [URL] ....
this is a problem that has now come up after solving an earlier problem i posted but its a completely seperate issue.
i have a class for loading a file when i button is clicked that seems to work. Here is the function in my LoadButton cpp:
void LoadButton::buttonClicked(Button* button)
{
FileChooser pedoFileChooser ("Choose an Audio File", File::nonexistent, String::empty, true);
if (pedoFileChooser.browseForFileToOpen())
{
File pedoFile (pedoFileChooser.getResult());
}
}
I want to be able to then use the file stored in pedoFile in the cpp of another class called PlayButton. I tried doing this with a pointer? not sure if that's correct way of doing it (i know very little about C++ or programming) by changing the function to this. I'm getting the error invalid initialisation of non-const reference of type 'juce::File*&' from a temporary of type 'juce::File'
void LoadButton::buttonClicked(Button* button)
{
FileChooser pedoFileChooser ("Choose an Audio File", File::nonexistent, String::empty, true);
if (pedoFileChooser.browseForFileToOpen())
{
File* &pedoFile = (pedoFileChooser.getResult());
}
}
View 3 Replies
View Related
Jun 15, 2014
//I dont understand this why does "<< "
The value of global now is: " << global << "
";" is equals to nine
#include <iostream>
int subtract (int a, int b);
int global = 5;
int main(void) {
using std::cout;
int a, b;
[Code] ....
View 1 Replies
View Related
Aug 8, 2013
Code:
#include <iostream>
using namespace std;
void f() {
int x=17;
//cout<<main::y<<endl; i want to access y from main scope
}
int main() {
int y=23;
//cout<<f::x<<endl;
I want to access x from f scope is there any way for this without global declaration? specially about function scopes...
View 1 Replies
View Related
Oct 11, 2013
I am trying to create a global array with user-defined dimensions.the code is:
Code:
int matr_size()
{
int x = 0;
printf("Please enter the number of nodes: ");
scanf( "%d", &x);
printf("There are %d nodes in this simulation.", x);
getchar();
return x;
}
[code]....
I read that an array cannot be defined by a variable in C so I assume that is the issue, but I'm not sure how else to do it. Previously the size was defined by #define NODES and it worked fine but I need this user input.
View 5 Replies
View Related
Nov 30, 2014
If I define the variable 'total', everything works well without any problem. But if I define it inside the function 'sum', I get irrelevant results, because each time the function gets executed, the variable total gets defined again, losing its value already assigned to it.
Do I have to use a global variable? Is there any way that I can do with without using a global variable?
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int total;
int sum(int a, int B)/>{
if (a < B)/>{
//printf("The total is %d, a is %d, and b is %d", total, a ,B)/>;
total += a;
[Code] ....
View 4 Replies
View Related
Mar 13, 2014
Ok so when the program runs the first function the data is stored and displayed in the file. The second function is supposed to read the name entered, compare it to the ones in the file then take the price with it BUT I seem to have done something wrong when reading the files (or maybe it has to do with the global function I'm not sure). Here's parts of the code :
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
[Code]....
View 7 Replies
View Related
Oct 4, 2012
is it possible to have a global variable pointing to a different address depending on the thread?
Imagine one would like to use threads with the loop:
for (i=0;i<n;i++){
globalPointerVariable=getAddress(i);
DoThingsUsingThe_globalPointerVariable();
}
View 4 Replies
View Related
Jun 18, 2012
If I DEFINE a global variable in two source files which belong to the same project, then there is a linker error "multiply defined symbols". But if I DEFINE a global variable in two source files which belong to the different projects, then it compiles fine. Why?
View 8 Replies
View Related
Nov 17, 2013
is there any variable type(or with another keyword) that we can change it's value in global scope?
View 5 Replies
View Related
Aug 5, 2013
Here is the code,
Code:
class A {
};
A& CreateObject() {
static A a;
return a;
} static A aa;
int main() {
return 0;
}
So is there any difference between a defined in CreateObject and aa?
View 6 Replies
View Related
Jul 6, 2013
I'm trying to run so called student-administration program.I got functions that can read and write student data, but the one saving the data from about 30 students has some problem that I can't figure. (warning: I'm quite new to C programming)so this is the code:..I guess I can't use global variables as function arguments?
Code:
//global variables
static char ReturnName[31];
static char ReturnFirstName[31];
static float ReturnAverage;
}
[code]....
incompatible types when assigning to type 'char[31]' from type 'int'
View 2 Replies
View Related
Nov 14, 2013
When a declare a string e.g.
Code:
char str[30]; as a global variable, the srting is initialized to NULL.
But if I declare char str1[30] INSIDE main(), then the string has garbage inside.... Why this happens??
E.g. the following code snippet...
Code:
#include <stdio.h>
char str[50];
int main(){
char str1[50];
[Code] ....
View 4 Replies
View Related
Apr 30, 2013
I'm having a really dumb moment and I cant seem to remember how an if statement works, with only the variable name as the condition..
Code:
if(var){
//then do something
}
View 7 Replies
View Related
Oct 5, 2014
My code has been acting odd. I made a function that layers my art resources but only the last tile of my art resource acts the way it should. My character goes behind and in front of the last tile and gets printed correctly. Strangely its really exclusive to the last tiles I print. What I need is to figure out in step by step order what going on with my code sample below and be able to layer the resources.
Here is a small sample of my main function. This is how I do my rendering.
Code:
Int main (int arc, char* args[]) {
//Move class
Move character;
//Class Tile & Side Tile
Tile *tiles [TOTAL_TILES];
[Code] ......
View 14 Replies
View Related
May 15, 2013
How the getline function works.
Code:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
[Code] ......
getline(&inputstr, 128, NULL); getline gets a line in a data file.
I assume that inputstr[128] is the name of the file? why is the number of the array in the getline function....
View 7 Replies
View Related
Apr 27, 2013
This is simple recursive solution of Fibonacci number:
Code:
int fibo(int n)
{
if(n<=1)
return 1;
else
return fibo(n-1)+fibo(n-2);
}
Now the recursion will generate a large recursion tree, like if n=5, 5 will call (5-1), (5-2) or 4,3 . What I want to know is, will fibo(n-1) will be called 1st go all the way to the base case 1, then do the summation or fibo(n-2) will be called right after fibo(n-1) ?
View 6 Replies
View Related
Dec 15, 2013
i want to ask how does malloc works on an array for instance can i dao this
Code: p=100;
int array[10];
array = malloc(p * sizeof(int));
then will the size of int be 100 so will i be able to do like
Code:
array[11] = 12 ; ???
also if i have a 2d array how can i use malloc on it and how does this works with pointers????
View 2 Replies
View Related