What is the output of the following C code?

#include

int main(){ 

int arr[5] = {1,2,3,4,5};

int *p = (arr+2); 

printf("%d",p[-1]);

return 0; 

}

A

2

B

3

C

Undefined behavior 

D

Compilation error

উত্তরের বিবরণ

img

#include <stdio.h>
int main() {
    int arr[5] = {1,2,3,4,5};
    int *p = (arr + 2);
    printf("%d", p[-1]);
    return}

1. int arr[5] = {1,2,3,4,5};
এখানে একটি অ্যারে আছে
arr[0] = 1
arr[1] = 2
arr[2] = 3
arr[3] = 4
arr[4] = 5
int *p = (arr + 2);
 
arr হচ্ছে অ্যারের প্রথম উপাদানের ঠিকানা (অর্থাৎ &arr[0])
তাই arr + 2 মানে হলো &arr[2], অর্থাৎ তৃতীয় উপাদানের মান। অর্থাৎ 3 কিন্তু প্রশ্নে আউটপুট বের করতে বলেছে p[-1] এর অর্থাৎ *P=arr[2] এর আগের ঠিকানার মান বের করতে বলেছে যেটা *p=&arr[1] যার মান হলো 2. এটাই ফাইনাল আউটপুট। 

Unfavorite

0

Updated: 2 days ago

Related MCQ

 The minimum number of NAND gates required to implement an OR gate is: 

Created: 2 days ago

A

1

B

2

C

3

D

4

© LXMCQ, Inc. - All Rights Reserved

Developed by WiztecBD