C :: Determine Compiler Version And Which Standard It Uses?
Jul 18, 2013
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;
}
Just wondering if there was a standard way people add a version number to their c++ code? I can just define a variable or #define and write the version number to that, but wanted to know if there is a standard method people use?
Just wondering about how to write extremely simple version of 'find' in C: It just lists the path names of the files in the specified directories and all subdirectories.For example,
I am/we developing in C and we have a number of different programs. We also have problem to keep track of different versions of a specific exe file.
Is there any way to add version number when build a file so the version is added in the properties.
I doing this in a MFC c++ project in a .rc file. Is there a way (or a similar way) of doing this in C? Here its stored in the details section with product version 6.0.8:
I have been trying to compile a static version of the boost libraries, however when I try to launch the program it says fatal error LNK1104: cannot open file 'libboost_serialization-vc100-mt-s-1_53.lib'
I have checked in the boost/stage/lib folder and that file is not there. I compiled boost with b2 link=static yet the file still isn't there.
I am using borland turbo c++ version 4.5 and for printing a coloured output i used textcolor() but it is showing error that call the undefined function 'textcolor' in main, so what can i do now to print a coloured output???
I have a problem to implement a recursive version of an algorithm that I made, I get different values. Here is the code so Iterative (OK) and Recursive code form that is not OK.
The data sets do not give equal:
The algorithm is given two source and target positions on a board, find the number of paths between them...
Input Example: 5 2 3 4 4
Output Example: 5
Iterative Algorithm ( OK )
Code: #include <iostream> #include <stdio.h> #include <cmath> #include <algorithm> #include <string.h> #include <vector> #include <queue> using namespace std; int n , dp [1000][1000], x, y, xx, yy;
I have a set of projects. Each one builds either a static library or an executable. What I'd like to do, is at build time I want to embed a version string representing the version of the executable as well as the version of each library. These version strings will come from an external source (in my case it's based on a "git describe" call, but that's beside the point). Embedding such strings can be highly valuable for traceability. (Versions of 3rd-party libraries are not necessary.)
I'm using qmake as my build system, but this should work more or less similarly with any build tool. What I'd ideally like to do is define this process in such a self-contained way that a an absolutely minimal amount of additional code is required in order to leverage it. Preferably, nothing more than an include(version.pri) in each project's .pro file in order to collect the versions. (Retrieving them later, such as to respond to a --version command-line flag, can be done via traditional C++ methods.)
What I've done so far is to define a singleton VersionTracker class, and then tweak the build system so that "MODULE" and "VERSION" are preprocessor symbols defined at build time. I've also tweaked the build system so that a file in each project, version.cpp, is rebuilt (and regenerated if necessary) on every build regardless of changes. This source file can capture the information in the preprocessor symbols into each static library and the executable.
Now, here's the problem. How can I get the information from those version.cpp files into the VersionTracker class? I thought I could use a global object's constructor to do it, but it turns out the symbols are stripped out when the static libraries are linked so I only get the executable's version. I also found a page on stackoverflow detailing a very clever way to call a registration function at class definition time, but again the class definition appears to be stripped out if it's defined in the version.cpp file of a static library and not referenced elsewhere.
Everything I've read basically says you either need to use linker flags to prevent symbol stripping entirely, which is probably an adoption-killer for this hack, or you need to use an explicit registration function called from the executable. I'd prefer to avoid this since it is just another thing a programmer could forget to update when a library dependency is added or removed.
My last idea, which I haven't tried yet, would be to put each version.cpp into a separate static library from the one it is describing. This version-only library could be linked without symbol stripping. I don't love this concept but it might work.
I haven't yet figured out how shared libraries can be worked into this framework at all. I'll worry about that after I get static libraries working.
Later i used trial version of vc2010 and created a static library using the below link. Its worked. [URL] .....
But now I'm using VC2003.Details as follows,
Microsoft Development enviroinment 2003 Version 7.1.3088 CopyRight @ 1987-2002 Microsoft Corporation. All Rights Reserved.
Microsoft .Net Framework 1.1 Version 1.1.4322 CopyRight @ 1998-2002 Microsoft Corporation. All Rights Reserved.
I used the same procedure & created the Static lib. But couldn't use this lib file in my main project.B'cos the project's property window doesn't have the :
Common Properties -> Framework & References
Couldn't find. Here with i attached missed property in VC2003. How can i set this property? Is any other way to use static lib in main project (application)?
I tried to do this with _spawnl(), but first of all I'm not sure how to properly ask for the path to iexplore.exe, as I'm sure it will change every time MS gets a whim to move it. I know there's a GetWindowsDirectory() call, but that's not where IE resides (its in "C:Program FilesInternet Exploreriexplore.exe" in XP, Lord know where on win 7 or 8).
Also, even temporarily hard coding the path to make it launch with spawnl(), I can't seem to get my html document to display. I know the path to that is right (since I put it there ).
I've been trying to calculate the Second standard deviation but the average in the second loop isn't calculating correctly which is causing the standard deviation (method 2) to not calculate correctly. I can't find anything wrong.
Code:
#include <iostream>#include <iomanip> #include <string> #include <fstream> #include <cmath> usingnamespacestd; int main ()
How to make a standard deck of cards and being able to shuffle and distribute the cards. I have made an array to store each card and I can display them but I assigned them all in order according to the suit and rank. Is this a viable way to do it if I intend to have a shuffle effect? Or should I create an array, randomly generate card, check for duplicates, then put them in the array, then display the array? Each card is a structure with two void pointer members for suit and rank.
Is there any way to do date math using standard C libraries? I looked around in the time.h but didn't see what I needed.
What I need to do is be able to add a certain number of minutes to a date and have it give the current date/time. For example, add 15918765 minutes to 01/01/1980 00:00 and have it tell me 04/07/2010 4:45PM. I really don't want to write this myself or go platform-specific.
int i; while (scanf("%i", &i)) printf("%i ", i); printf(" done ");
i tried several combination of Ctrl+D and "Enter", it's not terminating, Ctrl+C just "cancels" the whole thing without printing "done", i'm running this on linux installed on a PC
The main point of the program is to calculate equations just like a standard calculator but I wanted to do it myself. I don't understand what the problem is right now but I've managed to create a program that asks for both values but somehow it doesn't want to ask for an operator (*, /, + etc). What's wrong with my code that the terminal skips the scanning part for the operator?
Code:
#include <stdio.h> int main() { int value1, value2, answer; char operator;
This has never happened before but I imagine that I've somehow accidently disabled a library or such.
namespace SB{ namespace Data{ class DLL Filed abstract{ //DLL is a macro defined as either __declspec(dllexport) or __declspec(dllimport) //depending on whether this is open as a project or a header
[Code]....
The error is from intellisense and is present on every occurrence of std::string
Earlier 4-5 years back, When I started learning C++ I used textcolor() function to change the textcolour. But its not working in Code Blocks 13.12. Is there any other standard way to color the text and background.