嵌入式软件开发----C语言面试题

1、int a=12; int*p,*q,*r;
p=&a;
r=p+1;
q=p++;
printf(“%2d%2d\n”,q-p,r-p);
printf(“%5d\n”,(char*)p-(char*)q);
 输出结果是多少?-1 0 4
   
2、下面程序执行的结果?为什么会是这个结果?255
int main()
{
char a[1000];
int i;
for(i = 0; i < 1000; i++)
{
a[i] = -1-i;
}
printf(“%d\n”, strlen(a));
return 0;
}

3、#include "stdafx.h"          
#define SQR(X) X*X
int main(int argc, char* argv[])
{
  int a = 10;
  int k = 2;
  int m = 1;
  a /= SQR(k+m)/SQR(k+m); 
  printf("%d\n",a); 
  return 0;

}

1

4、设
#define N 3
#define Y(n) ((N+1)*n)

则表达式2*(N+Y(5+1))的值是   

     48

你可能感兴趣的:(嵌入式软件开发----C语言面试题)