C语言库函数源码哪里看?这里看!

起因

  • 想要一个功能函数,用字符串str2代替字符串str1的后面几位,最好是可以指定长度的
  • 但是,C语言的库函数中只有一个strncpy函数,是用str2代替str1前面几位的,这样一个功能和我的预期刚好相反,于是就想看下源码,修改修改整一个
  • 找到一个查看C语言库函数源码个方法,记录一下

方法

  • 首先安装过VS Studio
  • 然后再安转目录中找到E:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\crt\src文件夹下
  • 搜索对应函数名即可
  • 比如我的,直接搜索strncpy
  • 点看.c文件即可

解决

  • 实现从后先前替代
char * strmcpy (char * dest,const char * source,size_t count)
{
        char *start = dest;

		int len = strlen(dest);

        while (count && (dest[len--] = *source++))    /* copy string */
		{
			count--;
		}
                

        if (count)									/* pad out with zeroes */
		{
			while (--count)
			{
               *dest++ = '\0';
			}
		}
		
        return(start);
}

在原有基础上改还是很方便滴

附件

没有安装下载这个,打包了一下
C库源码

更多推荐

查看C语言库函数源码