C高级练习题

1. 0xFF bit5 0 0x80 bit2 1

int a=0xFF;

a & =~(0x1 << 5);

int a =0x80;

a | =(0x1 << 2);

2. 定义一个整数

int a;

定义一个指向整数的指针:

int* p=&a;

定义一个指向指针的指针,它指向的指针指向一个整形数

int* *p2=&p;

一个有10个整形数的数组:

int arr[10];

一个有10个指针的数组;该指针指向一个整形数:

int* p[10]=arr;

一个指向有10个整形数数组的指针

int* (*p)[10];

写出程序输出:               

int main()

{

int a[10] = {0,1,2,3,4,5,6,7,8,9};

memcpy(a+3, a, 5);

for(int i=0; i<10; i++)

{

printf("%d",a[i]);

}

return 0;

}

写出程序输出:       0121456789       

5. 对于整形变量A = 0x87654321,请画出 little endian big endian的方式下在内存中是如何存储 的?

little endian                     big endian

高地址>>0x87                低地址>>0x87   

               0x65                               0x65

               0x43                               0x43

低地址>>0x21                高地址>>0x21

6. 请问以下代码有什么问题

int main()

{

char a;

char *str = &a;

strcpy(str, "hello");

printf(str);

return 0;

}

“hello”这个字符串复制带了只有一个字节a的位置,会导致越界

7. 将字符串“helloworld”倒叙编程输出

8. 写一个函数和,可以将CPU占有率保持在100%

9. 简述linux目录结构中 /usr /etc/dev目录的作用

在Linux目录结构中,/usr、/etc和/dev目录都有着重要的作用,具体如下:

  1. /usr目录:该目录是Unix Software Resource(Unix软件资源)的缩写,主要用于存放用户安装的软件程序,包括二进制文件、库文件、头文件、文档等。/usr/local目录是用户自己安装的软件程序的默认位置路径,/usr/share目录存放共享数据,如帮助文档、图标等。

  2. /etc目录:该目录存放系统管理配置文件和子目录,包括系统内核参数信息、用户账号信息、组信息、sudo命令配置文件、开机自动挂载、主机名称、本地DNS域名、DNS服务器地址、环境变量和别名、Bash的配置文件等。

  3. /dev目录:该目录存放设备文件,包括硬件设备和虚拟设备,如磁盘、光驱、串口、USB设备等。在Linux中,一切皆文件,设备也不例外,因此/dev目录中的设备文件可以被当作普通文件一样进行读写操作。

你可能感兴趣的:(c语言,开发语言)