28
Q:

main()

{

char s[ ] = "man";

int i;

for( i=0; s[ i ]; i++)

printf( "n%c%c%c%c", s[ i ], *(s+i), *(i+s), i[s] );

}

A) mmmm aaaa nnnn B) aaaa mmmm nnnn
C) nnnn aaaa mmmm D) None

Answer:   A) mmmm aaaa nnnn



Explanation:

s[i], *(i+s), *(s+i), i[s] are all different ways of expressing the same idea.Generally array name is the base address for that array. Here s is the base address. i is the index number/displacement from the base address. So, indirecting it with * is same as s[i]. i[s] may be surprising. But in the case of C it is same as s[i].

Subject: Programming
Q:

How would you free the memory allocated by the following program?

#include "alloc.h"

#define MAXROW 3

#define MAXCOL 4

main()

{

     int **p, i;

     p = (int **) malloc (MAXROW * sizeof (int *));

      for ( i = 0; i < MAXROW ; i++)

            p[i] = (int *) malloc (MAXCOL * sizeof (int ));

}

Answer

for ( i=0; i < MAXROW ; i++)


free (p[i]);


free (p);

Report Error

View answer Workspace Report Error Discuss

Subject: Programming

0 3762
Q:

How would you dynamically allocate a 2-D array of integers?

Answer

#include "alloc.h"


#define MAXROW 3


#define MAXcol 4


main()


{


        int *p, i, J;


        p = (int *) malloc (MAXROW * MAXCOL * sizeof (int));


         for ( i=0; i < MaxROW ; i++)


         {


                for (j=0; j < MAXCOL ; j++)


                { 


                      p [ i * MAXCOL + j] = i;


                       printf ( "%d", p [i * MAXCOL + j] );


                 }


                  printf ("\n");


          }


}

Report Error

View answer Workspace Report Error Discuss

Subject: Programming

0 3258
Q:

What would be the output of the following program ?

main()

{

     const int x = 5; 

      int *ptrx;

      ptrx = &x;

      *ptr = 10;

       printf ("%d", x);

}

A) 5 B) 10
C) Error D) Garbage value
 
Answer & Explanation Answer: B) 10

Explanation:
Report Error

View Answer Report Error Discuss

Filed Under: Programming

2 15643
Q:

Point out the error in the following program.

main()

{

    char mybuf[] = "Zanzibar" ;

    char yourbuf[] = " Zienckewiz";

    char * const ptr = mybuf;

     *ptr = 'a';

     ptr = yourbuf;

}

Answer

ptr pointer is constant. In ptr = yourbuf the program is trying to modify it, hence an error.

Report Error

View answer Workspace Report Error Discuss

Subject: Programming

5 7374
Q:

Improve the following code using typedef.

struct node

{

      int data1;  float data2;

       struct node *left;

       struct node *right;

};

struct node *ptr;

ptr = (struct node *) malloc (sizeof (struct node) ); 

Answer

typedef struct node * treeptr


typedef struct node


{


         int data1;


         float data2;


         treeptr *left;


         treeptr *right;


}treenode;


treeptr ptr;


ptr = ( treeptr ) malloc ( sizeof ( treenode ) );

Report Error

View answer Workspace Report Error Discuss

Subject: Programming

0 2659
Q:

In the following code can we declare a new typedef name emp even though struct employee has not been completely defined while using typedef? < Yes / No>

typedef struct employee *ptr;

struct employee

{

       char name[20];

        int age;

        ptr next;

};

Answer

Yes

Report Error

View answer Workspace Report Error Discuss

Subject: Programming

0 3059
Q:

Answer the following Program

#define CHARSIZE 8

#define MASK(y) (1 << y % CHARSIZE)

#define BITSLOT (y) (y / CHARSIZE)

#define SET(x,y) ( x[BITSLOT(y)] = MASK(y) )

#define TEST(x,y) ( x[BITSLOT(y)] & MASK(y) )

#define NUMSLOTS(n) ((n + CHARSIZE - 1) / CHARSIZE)

 

Give the above macros how would you

1. declare an array arr of 50 bits

2. put the 20th bit on

3. test whether the 40th bit is on or off

Answer

1. char arr[NUMSLOTS(50)];


2. SET (arr, 20);


3. if (TEST (arr, 40))

Report Error

View answer Workspace Report Error Discuss

Subject: Programming

0 2502
Q:

What would be the output of the following program ?

main() 

{

       unsigned  int a = oxffff;

        ~a;

        printf ("%x", a);

}

A) ffff B) 0000
C) 00ff D) None of the above
 
Answer & Explanation Answer: A) ffff

Explanation:
Report Error

View Answer Report Error Discuss

Filed Under: Programming

0 15242