I have two basic questions about what is happening:
1. The return value of ret_con should be pointing to const, but instead it's pointing to a (non-const) pointer to const. Does the compiler only check the qualifiers of the end destination, why doesn't this give a warning?
2. The original variable from ret_con (ci) is a local automatic, shouldn't its lifetime have expired when you leave the scope?
I also checked this with C++ compiler (taking out the auto keyword), it gave no warnings either.
Is there a way to check if a compiler has c++11 enabled?
I have a library and it has converters between std strings and the internal string type. I current have preprocessor surrounding the converters for u8string, u16string, and u32strings, but it requires the end user flip the switch manually. It would be nice if I could know at compile time without being told whether or not those types exist.
m_gradient() constructor is called to construct m_gradient, which in turns sets a variable called m_S to NULL(0), then in the assignment operator, because the m_S is NULL, Visual Studio throws an exception saying that destination pointer is null, but it's not fatal. I don't like that to happen because I have to press ignore many many times when the program is debugged, how can I fix this bug (not mine) to avoid the null destination pointer exception?
As an intermediate layer, the function calls boost unbounded array operator = which in turns calls std::copy which results in this error
I want to examine every packet of a pcap trace file and if packet n+1 source address == packet n destination address && packet n+1 destination address == packet n source address i want to get the time between those 2 packages.
Problem: I can't compare the ipv6 adresses of src and destination.
comparing src and src is no problem. dst with dst as well
if i try to compare these adresses i will never get a match. But i use a trace file with much matches. Do i need a offset in pkt_ptr? I saw some examples which deals with it.
Code:
uint32_t* test = (uint32_t*)ipv6_dst; for (uint32_t j=0;j<sizeof(ip_hdr->ip6_dst);j++) { printf ("%x", *(test+j)); } printf ("
I am programming with the Code::Blocks IDE and using the GNU GCC compiler. When I create an simple console application that uses strings it kind of glitches out, but here's the code:
#include <iostream> #include <cstdlib> #include <string> using namespace std; int main() ered: " << x;
[code].....
What the output is:
Please enter a string of text: Hello World You entered: Hello Process returned 0 (0x0) execution time : 4.735 s Press any key to continue.
Anyway I don't know why it removes what I typed after the space I put in between Hello and World.
I have an issue. VS 2013 isn't recognizing objects that I've declared when I use class functions.I'm getting this error: "Line 14 and 15: Error C2228: left of '.asciiToFpc6' must have class/struct/union"...Here's the relevant code:
Additionally VS apparently doesn't like my bitwise operators in my class functions and doesn't think they're doing anything. It gives "warning C4552: ['|', '<<', '>>', '&'] : operator has no effect; expected operator with side-effect" for all of them, but it seems to me the code should work fine and actually accomplish things....
Code: activity = new Idle(this, NULL); class Idle : public Activity { private: float mTimeInIdle; public: Idle() : mTimeInIdle(0) { } Idle(Objects *actor, Goods *target) : Activity(actor, target) { }
Error 1 error C2514: 'Idle' : class has no constructors d:jackydocumentsvisual studio 2010projectsperfectsimperfectsimperfectsimObjectsObjects.h 43 1 PerfectSim
The activity = new Idle(this, NULL) line is located inside the Objects::Objects(...) constructor.
Would it be caused by some cyclic dependencies? How do I go about resolving it?
I'm working on this homework assignment where the program takes in the user's height in inches, weight in pounds, and age, then calculates their hat size, jacket size and waist size. The formulas for these are as follows:
Hat: (weight/height) x 2.9
Jacket: (height x weight)/288 then adjusted by adding 1/8 an inch for every 10 years over the age of 30 (The adjustment only takes place after a full 10 years, so there is no adjustment for 30-39, but there is for 40)
Waist: (weight/5.7) then adjusted by adding 1/10 of an inch for each 2 years over the age of 28 (the adjustment only takes place after a full 2 years, so no adjustment for 29, but there is for 30, etc)
I'm supposed to utilize functions for each of the three formulas.
There's a couple things I can't figure out.
1. Why won't the compiler recognize 2.9 and 5.7 as numbers?
2. How do I adjust the calculation for the jacket and waist based on age?
Here's what I've got so far:
#include <cstdlib> #include <iostream> using namespace std; double hatSize(int weight, int height); double jacketSize(int weight, int height, int age); double waistSize(int weight, int height, int age);
Fresh storage string not released before return A memory leak has been detected. Storage allocated locally is not released before the last reference to it is lost. (Use -mustfreefresh to inhibit warning) string_read.c:6:7: Fresh storage string created
As we know in the compilation stage, the compiler will instantiate a concrete type for a template, for example:
template<class T> void test(T m ) { cout << m << endl; } int main() { int kl = 0; test<int>(kl); }
In the main function, the compiler will try to have a int entry. Also we know that in the compilation stage, generally we have several steps: lexical analysis, syntax analysis, grammer analysis and intermediate language(IR).
So my question is: In which step is the instantiation done? Before IR or after IR?
Working on a basic class program and I'm generating two compiler errors that I'm not sure how to fix. Header file, implementation cpp and main cpp are shown below. The specific errors are shown after the code.
The file generates the second error, C2228, at lines 37-41 and 43. Basically where I tried using the second created object. Error message is "left of '.setFirstName' must have class/struct/union"
Working on a solution involving inheritance. The whole solution is pretty massive at this point so I'll just focus on the problem areas. I'm getting a lot of "redefinition" and "undefined class type" compiler errors, including C2370, 2011, 2504, and 2027, in Benefit.h, Employee.h (the constant members are a big occurance) I'm also getting 2027 and 2079 in EmployeeMain.cpp. with my Benefit and Employee object calls.
Clearly I missed something in about how to code this correctly. Sadly the course textbook focuses on general OOP theory instead on the accompanying C++ syntax.
Is there any code I can use to determine my compiler version and which Standard It uses? I know the following code determine that my compiler followed ANSI But how about a version of that? ****My OS is now Ubuntu
Code: #include <stdio.h> int main(void){ printf("File :%s ", __FILE__ ); printf("ANSI :%d ", __STDC__ ); //return 1 if it follow ANSI but version? return 0; }
My compiler (GCC) keeps expecting an expression where it shouldn't in 1 specific piece of my code:
int zxcNewWindow( HWND parent, TCHAR *text, zxWINDOW *kid, UINT style, int x, int y, int w, int h, int type ) // right here { *kid = zxDefWINDOW;
The project contains only 2 files right now and the settings are just the default for an empty Code::Blocks 12.11 project. Both files are in UTF-8 format (tried in ASCII too), I just cannot see why this is not compiling correctly. I'll post the files in the next two posts.
Edit: For those of you who didn't get what the error was from the above here's the full log:
mingw32-gcc.exe -Wall -g -DzxDEBUG -c C:MePrjscppzxGUImain.c -o objmain.o C:MePrjscppzxGUImain.c: In function 'zxcNewWindow': C:MePrjscppzxGUImain.c:39:10: error: expected expression before '{' token Process terminated with status 1 (0 minutes, 0 seconds) 1 errors, 0 warnings (0 minutes, 0 seconds)
I am trying to run this source code but i am getting the compiler error Expression Must Have a Constant Value. I tried making both the variables x and y constants and assigned them to a significantly big number but then i am getting the error expression must be a modifiable lvalue.I have made comments in the code in front where Visual Studio is giving me the syntax error (red squiggly line).
#include<iostream> #include <string> #include<cmath> using namespace std; int main(){ int x; int y;
the problem that I'm running into is that the compiler skips to the end when I put my initials in //User input > "Initials"
I'm using Microsoft Visual C++ 2010 Express.
Here is the assignment:
Plan and code a program to do the following. You found an exciting summer job for 5 weeks. It pays $15.50 per hour. You will input the number of hours per week that you worked and then compute your total earnings. You must pay taxes of 14%. After paying taxes, you will spend 20% of your money on cloths and 5% on school supplies. After buying clothes and supplies, you will use 25% of the remaining money for savings.
Input
Your 3 initials and the hours for each of the 5 weeks. Use the following numbers of hours for your first test 25, 30, 20, 23, 22.
Calculations
Gross pay is the rate of pay times the sum of all hours you worked. Use CONSTANTS for each of the following rates:
Tax rate 14% of the gross earnings Clothing 20% of earnings after taxes School supplies 5% of earnings after taxes Savings 25% of earnings after taxes and expenses
Output:
Output your initials, total hours worked, gross earnings, taxes, net earnings after taxes, clothing expense, supplies expense, amount going to savings and amount left to spend. Output must be aligned to the right as shown with 2 decimals in all numbers. Sample output:
Initials ABC Total Hours Worked 120.00 Gross Earnings 1860
Taxes paid 260.40 Net Earnings 1599.60
[code]....
Turn in:Be sure your output file contains user prompts and what was entered by the user. In addition to the results of your program processing. Run with above listed data.
Here is my code
#include <iostream> #include <iomanip> using namespace std; int main() { double Initials, TotalHours, GrossEarn, TaxesPaid;