Chinaunix首页 | 论坛 | 博客
  • 博客访问: 17415
  • 博文数量: 5
  • 博客积分: 1425
  • 博客等级: 上尉
  • 技术积分: 66
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-27 12:59
文章分类
文章存档

2011年(1)

2010年(1)

2009年(3)

我的朋友
最近访客

分类: C/C++

2009-08-01 15:08:35

    呵呵,你没看错,真的只是了解而已,不是熟悉,更不是精通。如果你不服,那就做做下面的这些基础测试题吧,这些题目有intel、Ti等公司的测试题,也有本人再次学习C的练习题。


一、我们常说C语言是一种基于函数和栈的语言。那么,C语言函数中的栈与普通数据结构上提到的栈有什么区别?(至少回答两点)


二、函数指针与普通数据类型指针有什么区别?


三、如下定义数组是否合法?并说明理由。

int n = 1024;

int a[n];

 

四、下面这个结构体的长度是多少??

struct test

{

    char c1;

    int  i1;

    short s1;

    char c2;

};


五、static关键字的作用?


六、const关键字的作用?


七、char *a[10]和char (*a)[10]有什么区别?


八、下面这段程序的打印信息是什么呢?

#include

void fun(int a);

int main(void)
{
    int i = 9;
    short *p = NULL; 
    short a[100] = {1, };

    printf("sizeof i = %d\n",i);
    printf("sizeof(i) = %d\n", i);
    printf("sizeof(*p) = %d\n", sizeof(*p));
  
    printf("sizeof(a) = %d\n", sizeof(a));
    printf("sizeof(a[101]) = %d\n", sizeof(a[101]));
    printf("%d\n", a[101]);
    printf("sizeof(&a) = %d\n", sizeof(&a));
    printf("sizeof(&a[0]) = %d\n", sizeof(&a[0]));
   
    fun(a[101]);
 
    return 0; 
}

void fun(int a)
{
    printf("sizeof(a[100] = %d\n", sizeof(a));
}

九、有一个32位变量a,将abit3~bit5置为2(即0b010),其它几位保持不变。

 

十、有如下变量定义,请依次写出后面四条赋值语句的左值:

int ix;

unsigned int ux;

char cx = (char)0xff;

unsigned char bx = (unsigned char)0xff;

ix = cx;

ix = bx;

ux = cx;

ux = bx;

 

十一、指出下面代码的错误之处:

typedef struct SS

{

       int x, y, z;

} *p;

p = malloc(sizeof(*p));

// TODO: add code here

free(&p->y);

 

十二、下面代码有什么问题?

char *a = “abc”, b[] = “abc”;

int main()

{

       char *c = “abc”;

       char d[] = “123”;

       strncpy(c, d, 10);

}

 

十三、下面代码中*p的值是多少?(用16进制表示)

char a[] = {1, 2, 3, 4, 5, 6, 7, 8};

int *p = (int *)a + 1;


十四、再看看下面代码的打印信息
char a[1000];
int i;
for (i = 0; i < 1000; ++i)
{
    a[i] = i;
}
printf("strlen(a): %s\n", strlen(a));



好了,就这些吧,懒得再写了,答案就不公布了。
阅读(1303) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:shell学习笔记

给主人留下些什么吧!~~