Strings Quiz

What does the following fragment of C-program print?

char c[] = “GATE2011”;char *p =c;printf(“%s”, p + p[3] — p[1]) ;

A. GATE2011

B. E2011

C. 2011

D. 011

Solution :

C) is correct.

char c[] = "GATE2011"; 

// p now has the base address string "GATE2011"
char *p = c;

// p[3] is 'E' and p[1] is 'A'.
// p[3] - p[1] = ASCII value of 'E' - ASCII value of 'A' = 4
// So the expression p + p[3] - p[1] becomes p + 4 which is
// base address of string "2011"
printf("%s", p + p[3] - p[1]); // prints 2011

Thanks for Reading

Placewit grows the best engineers by providing an interactive classroom experience and by helping them develop their skills and get placed in amazing companies.

Learn more at Placewit. Follow us on Instagram and Facebook for daily learning.

--

--

--

Upskilling students for tech placements!

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Onnxruntime & OpenCV for C++

Swarm on WASM — SWASM

Make Digital Signature in iOS

We Spent a Year Building a Dating App That Only Lasted One Week

The Reality Behind Designing Migration Strategies that Deliver Performance, Scalability and ROI

WebGL Overview

Role of Python Language in AI and MI.

Playing The “Grand Game” of Software Engineering

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Placewit

Placewit

Upskilling students for tech placements!

More from Medium

Leetcode 42 — Trapping Rain Water

Summary of Chapter 4 Graphs, Algorithms (4th edition), Part 1

LeetCode — Linked List Cycle

Range Sum of BST 🍐