哈罗单车面经总结

1.int32 a;

(1)设置bit3

(2)清除bit3

(3)获取a的高八位的值和低八位的值

(4)将数据存入高八位

解答:

   #define BIT3 (0x1<< 3)

    static int a;

    void set_bit3(void)
   {
       a |= BIT3;
   }
   void clear_bit3(void)
  {
       a &= ~BIT3;
  }
#include <stdio.h>
#include <stdlib.h>
char right,left,temp;//right表示第八位,left表示高八位
int size_right,size_left,size_temp;
short int number,size_number;
short int number_two,number_three;
//int 是四个字节 short int 是两个字节
int main()
{
    number =32343; //65536个数范围是 -32768-32767
    right = number&0XFF;//低八位
    left = number>>8;//高八位
    printf("right = %d\n",right);
    printf("left  = %d\n",left);
    printf("number_two=%d\n",left*256+right);
    //前取高八位,在取低八位
    left=(number>>8)&0XFF; //先取高八位
    right=number&0XFF;     //再取第八位
    printf("number_two=%d\n",left*256+right);
    //现在要把高八位和第八位合并
    number_three=left;
    number_three<<=8;
    number_three|=right;
    printf("number_three=%d",number_three);
    return 0;
}

2.将12存入内存地址为0x80000000中,代码

{
int*p =NULL;
p=0x80000000;
*p =12;
}
//or
*((void *)0x80000000)=12;

3.实现库函数字符串复制函数

void strCopy(char *src,char *dest)
{
   if(src==NULL || dest==NULL)
      return ;
    char *tmp1=src;
    char *tmp2=dest;
    while((*tmp2++=*tmp1++))
    ;
}

4.链表的删除与插入;

5.结构体对齐的内容;

6.动态申请内存需要注意什么    https://blog.csdn.net/feihangdan/article/details/79656567


猜你喜欢

转载自blog.csdn.net/qq_38446366/article/details/80976806