1、c语言 ,sleep(10);  的头文件   #include <unistd.h>

2、c所有的库函数源代码都位于glibc中,只需要下载glibc包,然后解压即可,具体下载网址:http://ftp.gnu.org/gnu/libc/可以下载一个c函数速查chm,随时查阅库函数的用法,或者查阅MSDN

3、数据在内存中的存放顺序 (变量的地址,最低地址的那个字节

(1)一个整数类型内部,低地址存储低位,高地址存储高位。

(2)若干个局部变量(在栈中存储的),先定义的高地址,后定义的低地址

(3)类、结构体或数组的元素,先定义的低地址,后定义的高地址

4、memcpy函数源代码:

void *memcpy(void *dst, const void *src, size_t len)
{
    if(NULL == dst || NULL == src){
        return NULL;
    }

    void *ret = dst;

    if(dst <= src || (char *)dst >= (char *)src + len){
        //没有内存重叠,从低地址开始复制
        while(len--){
            *(char *)dst = *(char *)src;
            dst = (char *)dst + 1;
            src = (char *)src + 1;
        }
    }else{
        //有内存重叠,从高地址开始复制
        src = (char *)src + len - 1;
        dst = (char *)dst + len - 1;
        while(len--){
            *(char *)dst = *(char *)src;
            dst = (char *)dst - 1;
            src = (char *)src - 1;
        }
    }
    return ret;
}
View Code

相关文章:

  • 2021-11-12
  • 2021-09-23
  • 2021-08-17
  • 2022-01-03
  • 2021-12-21
  • 2021-06-11
  • 2021-07-13
  • 2021-06-19
猜你喜欢
  • 2021-11-17
  • 2022-02-15
  • 2021-06-03
  • 2022-12-23
  • 2022-01-11
  • 2021-07-28
  • 2021-08-19
相关资源
相似解决方案