Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 9074615
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 16, 20262026-06-16T18:40:44+00:00 2026-06-16T18:40:44+00:00

I came across this piece of code. In the cout statement the conditions evaluates

  • 0

I came across this piece of code. In the cout statement the conditions evaluates to true.

   a[10][10]=’h’;
   cout<<(a[0]==*a)&&(*a==0[a]);

Accessing an array element/address using 0[a] is the new thing.
Can somebody please explain this type of notation ?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-16T18:40:46+00:00Added an answer on June 16, 2026 at 6:40 pm

    From http://c-faq.com/aryptr/joke.html

    Q: I came across some joke code containing the expression 5[“abcdef”] . How can this be legal C?

    A: Yes, Virginia, array subscripting is commutative in C. [footnote] This curious fact follows from the pointer definition of array subscripting, namely that a[e] is identical to *((a)+(e)), for any two expressions a and e, as long as one of them is a pointer expression and one is integral. The “proof” looks like

    a[e]
    *((a) + (e))    (by definition)
    *((e) + (a))    (by commutativity of addition)
    e[a]        (by definition)
    

    This unsuspected commutativity is often mentioned in C texts as if it were something to be proud of, but it finds no useful application outside of the Obfuscated C Contest (see question 20.36).

    Since strings in C are arrays of char, the expression “abcdef”[5] is perfectly legal, and evaluates to the character ‘f’. You can think of it as a shorthand for

    char *tmpptr = "abcdef";
    
    ... tmpptr[5] ...
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I came across this piece of code today: File.SetAttributes(excelFileName, File.GetAttributes(excelFileName) & ~ (FileAttributes.Archive |
I came across this piece of code on a website. main(i) { gets(&i); puts();
I was look at somebody else's code and came across this piece of code
I came across a piece of code which looks like this: jQuery(function($) { $('#saySomething').click(function()
I came across this problem when referring a piece of JavaScript code: <a href="javascript:void(0);"><!--
I came across a piece of code which uses #pragma comment(lib, libraryname). Why this
I came across a piece of code that is: for(i=((90.0E1,0x5A)<=(0x158,140.70E1)?(.28,3.45E2,0):(95.30E1,26.40E1)<=1.400E2?(1,this):(108.,0x227));i<length;i++) { // some other
I came across this pretty little piece of code here : List<DataTable> result =
I came across this piece of code where programmer determines uploaded file size like
I came across this piece of code, and I can't quite figure out why

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.