C PROGRAMMING KEYWORDS: IN C,KEYWORDS ARE THE PRE-DEFINED FUNCTIONS WHICH IS RECOGNIGED BY THE COMPILER.
- C PROGRAMMING KEYWORDS TYPES
- C PROGRAMMING KEYWORDS MEANING
- C PROGRAMMING KEYWORDS TABLE
- auto
- break
- case
- char
- const
- continue
- default
- do
- double
- else
- enum
- extern
- float
- for
- goto
- if
- int
- long
- register
- return
- short
- signed
- sizeof
- static
- struct
- switch
- typedef
- union
- unsigned
- void
- volatile
- while
- USAGE OF C PROGRAMMING KEYWORDS
- C PROGRAMMING KEYWORDS LIST
- C PROGRAMMING KEYWORDS STATIC
- C PROGRAMMING KEYWORDS DOWNLOAD
- C PROGRAMMING KEYWORD EXTERN
- C PROGRAMMING KEYWORDS RESTRICT
- The restrict keyword tells the compiler that for the lifetime of the respective pointer you will access the object pointed to only through this pointer (and pointers derived from it by means of pointer arithmetics).In the descriptions of restrict, you will usually read the wording ‘you intend to access …’. However, as far as I understood, the result is undefined if you violate thisintention. This is well described in the article ‘Demystifying The Restrict Keyword’ by Mike Acton. Background information on strict aliasing can be found in the article‘Understanding Strict Aliasing’ by the same author.restrict was introduced in the C99 standard (C99 on Wikipedia). Regarding GCC restrict was implemented since version 3.0 (or 3.1… doesn’t really matter anymore, I guess) but it makes good use of its optimization potential since 4.5. In GCC you can make use of restrict also if you do not (or do not want to) use -std=c99. This requires using the syntax __restrict__ (apparently __restrict works as well).It is implemented in the Intel C compiler, where you need to pass any of the options /Qrestrict (-restrict) or /Qc99 (-c99) (see also this).The MS compiler does not support C99, however, since version 2010 of MSVC it supports restrict using the syntax __restrict.Most importantly, restrict can make large differences regarding code run time!
- VOLATILE KEYWORDS IN C PROGRAMMING
No comments:
Post a Comment