C++ :: Any Variable Type That Can Change Its Value In Global Scope
Nov 17, 2013is there any variable type(or with another keyword) that we can change it's value in global scope?
View 5 Repliesis there any variable type(or with another keyword) that we can change it's value in global scope?
View 5 Replies//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] ....
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...
Are there any situations to explicitly use the scope resolution operator with global scope? I can imagine a situation like:
#include <cmath>
class IntWrapper{
public:
IntWrapper& pow(char);
IntWrapper(char);
private:
int m_int;
[Code] ....
But then I would think that the writer should have used a different name, and that using the scope resolution operator in the constructor body is still pointless...
How to change an enum type variable to a string type variable?
View 2 Replies View RelatedThe compiler "forces" me to use the std::max method, I cannot override it even when writing ::max in my code.
View 4 Replies View RelatedI 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?
Ran into something today that does not make sense:
This compiles: Code: int x = 5;
switch(x) {
case 0:
{
int value = 5;
}
break;
[Code] ....
Ok so it doesn't like int value = 6 b/c of int value = 5 for case 0. However since the value in case 0 is declared within the brackets one would think it has case scope.
So I tried this:
Code: int x = 5;
switch(x) {
case 0:
{
int value = 5;
}
break;
[Code] ....
Now it doesn't like it b/c value has not been declared in case 1:. These two conditions cannot possibly be both true at the same time. You cannot disallow the declaration of value in case 1 b/c it interferes with value in case 0 and at the same time disallow me to use value from case 0 b/c it is not in scope. If it was not in scope then theoretically I should be able to declare value in case 1.
Both MSVS 2012 and 2013 exhibit the same behavior. I checked the standard and it is unclear on the matter.
I'm trying out friend functions not in just one source file to see how it works but I'm getting an error.
/* ----- ClassOne.h ----- */
#ifndef CLASSONE_H_
#define CLASSONE_H_
#include "classTwo.h"
using namespace std;
class ClassOne {
[Code] ....
Basically, I just want to print out the private members of ClassOne using ClassTwo's friend function twoPrintsOne().
The error is in classTwo.cpp and it says that m_a and m_b in the twoPrintsOne function are not declared in this scope.
I'm working through this neural network tutorial, unfortunately I get stuck trying to compile on line 28, saying "error: 'neuronNum' not declared in this scope." I seem to always get stuck on these kinds of errors, yet I don't understand because I though that the variable was declared and initialized within the for loop.
#include <iostream>
#include <vector>
using namespace std;
[Code]....
I am not getting any error below
--------
#include <iostream>
using namespace std;
void main()
{
char sqr[3];
sqr[0] = '1';
sqr[1] = '1';
cout << sqr[0] << sqr[1];
while (1);
}------------
but if I move my char type array before main , I get error l
----------------------------
#include <iostream>
using namespace std;
char sqr[3];
sqr[0] = '1';
sqr[1] = '1';
void main()
{
cout << sqr[0] << sqr[1];
while (1);
}
-------------------
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] ....
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.
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;
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;
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?
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].....
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]....
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());
}
}
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.
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] ....
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]....
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();
}
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 RelatedHere 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?
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'