09-18-2011
Quote:
Originally Posted by
agama
An enum is interpreted by the compiler and not the preprocessor.
That explains it.
Okay, redone with #define's and it works. Ordinarily I'd avoid preprocessor tricks, except PIN_A defines a value that's used in both preprocessor and expression contexts -- it can be used as an integer like (1<<PIN_A), to define an 8-bit number to be fed into PORTA, or as part of a variable name RA[0-9] to define a member of a bitfield...
8 More Discussions You Might Find Interesting
1. Programming
helo i have asked in exam what that what is the base type of
enum
options are given bewlo
(1) long int
(2) short int
(3) signed int
(4) unsigned int
can u tell me what is the exact answer from the above option
Regards,
Amit (1 Reply)
Discussion started by: amitpansuria
1 Replies
2. IP Networking
Hi Guys,
This is really really urgent. Am looking out for some quick answers.
I'm developing a DNS Resolver client that interprets DNS Query repsonses & pass on the needful to DNS applications.
When an ENUM query(modified to an nslookup naptr query) is issued & an NAPTR RR(Resource Record)... (1 Reply)
Discussion started by: smanu
1 Replies
3. Programming
Hi,
Anyone please explain the functionality of ## in c.
I didn't get the following preprocessor directives,
# define LL(x) x ## LL
# define LL(x) x ## i64
Thanks,
Naga:cool: (1 Reply)
Discussion started by: Nagapandi
1 Replies
4. Programming
#include <iostream>
#include <stdio.h>
using namespace std;
typedef struct A
{
enum a{ red,blue,green}a;
}obj11;
obj11 obj1;
int main()
{
//obj1.a=red; // how to set variable ?
cout<<"sizeof struct is n"<<sizeof(obj1);
cout<<"obj1.a is"<<obj1.a;
if... (1 Reply)
Discussion started by: crackthehit007
1 Replies
5. Programming
Hi,
Just wondering if it is possible to trim the file path output by __FILE__ preprocessor in my debugging line.
Let's say my main.cpp file is found in C:\User\MyName\SystemA\Mod1\SubMod2\Test\main.cpp
for __FILE__, I just want the filename - main.cpp to be printed, instead of the entire... (2 Replies)
Discussion started by: tanlccc
2 Replies
6. Programming
I am trying to implement a spare array in C that would be referenced by regular integers.
Right away: define array for maximum possible index elements completely is not what I trying to get!!!
It should be a construction that would have just 2 elements if I need to have just two indexes, like... (8 Replies)
Discussion started by: alex_5161
8 Replies
7. Programming
Hi All,
I came across this error "MIXING ENUM TYPES" when I run my C program against the Coverity Tool. I've made many search relating to the error, but I didnt find the exact solution. Can anyone help me to overcome this.?
Thanks in Advance.!! (3 Replies)
Discussion started by: Parameswaran
3 Replies
8. Programming
I am currently using Linux CentOS and programming in FORTRAN 90 using Portland 7.1 compiler.
I am able to set in the preprocessor directives a flag called TEST. when I go to use logic in my code i can write
#ifdef TEST
execute something
#endif
Furthermore, if I want to negate the... (2 Replies)
Discussion started by: prodigious8
2 Replies
assert(3C) assert(3C)
NAME
assert - verify program assertion
SYNOPSIS
#include <assert.h>
void assert(int expression);
The assert() macro inserts diagnostics into applications. When executed, if expression is FALSE (zero), assert() prints the error message
Assertion failed: expression, file xyz, line nnn
on the standard error output and aborts. In the error message, xyz is the name of the source file and nnn the source line number of the
assert() statement. These are respectively the values of the preprocessor macros __FILE__ and __LINE__.
Since assert() is implemented as a macro, the expression may not contain any string literals.
Compiling with the preprocessor option -DNDEBUG (see cc(1B)), or with the preprocessor control statement #define NDEBUG ahead of the
#include <assert.h> statement, will stop assertions from being compiled into the program.
Messages printed from this function are in the native language specified by the LC_MESSAGES locale category. See setlocale(3C).
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Interface Stability |Standard |
+-----------------------------+-----------------------------+
|MT-Level |Safe |
+-----------------------------+-----------------------------+
cc(1B), abort(3C), gettext(3C), setlocale(3C), attributes(5), standards(5)
30 Mar 2005 assert(3C)