草庐IT

strcpy_mine

全部标签

c++ - 为什么在遗留 strcpy() 中没有健全性检查

以下是strcpy在传统系统中最流行的实现。为什么一开始不检查dest和src是否为NULL?我曾经听说过,在过去,内存是有限的,所以总是首选短代码。您会在开始时使用NULL指针检查来实现strcpy和其他类似功能吗?为什么不呢?char*strcpy(char*dest,constchar*src){char*save=dest;while(*dest++=*src++);returnsave;} 最佳答案 NULL是一个坏指针,但(char*)0x1也是。它也应该检查吗?在我看来(我不知道确切的原因),不需要在如此低级的操作中进

c++ - 将 strcpy_s 用于 TCHAR 指针(Microsoft 特定)

我想知道哪种方法是正确的?_tcscpy(tchar_pointer,_tcslen(tchar_pointer),_T("HelloWorld"));或_tcscpy(tchar_pointer,_tcsclen(tchar_pointer),_T("HelloWorld"));或_tcscpy(tchar_pointer,???,_T("HelloWorld")); 最佳答案 假设您使用的是_tcscpy_s而不是_tcscpy,第二个参数应该是数组的实际大小,而不是当前包含的字符串的长度。例如:TCHARdest[20];_t

strlen, strcpy,strcmp,strcat,strncpy,strncmp,strncat,strst库函数的详细解析以及模拟实现

 🐶博主主页:@ᰔᩚ.一怀明月ꦿ ❤️‍🔥专栏系列:线性代数,C初学者入门训练,题解C,C的使用文章🔥座右铭:“不要等到什么都没有了,才下定决心去做”🚀🚀🚀大家觉不错的话,就恳求大家点点关注,点点小爱心,指点指点🚀🚀🚀目录🐰strlen🐰模拟strlen🐰strcpy🐰模拟strcpy🐰strcat🐰模拟strcat🐰strcmp🐰模拟strcmp🐰strncpy🐰strncat🐰strncmp🐰strstr🐰模拟strstr🐰strlenstrlen用于求字符的长度,引用的头文件是#includestrlen的原型:size_tstrlen(constchar*str);str:待求字符串的

strlen, strcpy,strcmp,strcat,strncpy,strncmp,strncat,strst库函数的详细解析以及模拟实现

 🐶博主主页:@ᰔᩚ.一怀明月ꦿ ❤️‍🔥专栏系列:线性代数,C初学者入门训练,题解C,C的使用文章🔥座右铭:“不要等到什么都没有了,才下定决心去做”🚀🚀🚀大家觉不错的话,就恳求大家点点关注,点点小爱心,指点指点🚀🚀🚀目录🐰strlen🐰模拟strlen🐰strcpy🐰模拟strcpy🐰strcat🐰模拟strcat🐰strcmp🐰模拟strcmp🐰strncpy🐰strncat🐰strncmp🐰strstr🐰模拟strstr🐰strlenstrlen用于求字符的长度,引用的头文件是#includestrlen的原型:size_tstrlen(constchar*str);str:待求字符串的

Java 或任何其他语言 : Which method/class invoked mine?

我想在我的方法内部编写一个代码,打印哪个方法/类调用了它。(我的假设是除了我的方法我不能改变任何东西..)其他编程语言呢?编辑:谢谢大家,JavaScript怎么样?Python?C++? 最佳答案 这是Java特有的。您可以使用Thread.currentThread()。getStackTrace().这将返回一个数组StackTraceElements.数组中的第二个元素将是调用方法。例子:publicvoidmethodThatPrintsCaller(){StackTraceElementelem=Thread.curre

c# - SVN 不断损坏带有 "<<<<<<< .mine"的文件,如何修复?

我有一个受版本控制(SVN)控制的VisualStudioC#项目。我总是毫无问题地提交和更新项目。但是几个小时前,当我尝试启动/重建项目时,VisualStudio抛出以下错误:Fileshasinvalidvalue"我不知道如何解决这个问题。我该怎么办? 最佳答案 当svn遇到冲突时会发生这种情况:您更改了文件,服务器上的文件已更改并且无法(轻松)自动合并。您现在需要决定什么是正确的解决方案。Subversion只是将差异添加到您的源文件中(并在其旁边创建文件,称为OriginalName.mine(未更改)和Original

git - 术语混淆, "theirs"与 "mine"

我完全搞不懂我的和他们的是什么意思。在这种特定情况下,我有一个功能分支,我刚刚通过rebase-i压缩了大约80次提交,并将其merge回develop。我遇到了一些冲突,我只想使用我的功能分支上的任何代码。我试过使用“我的”,但实际上似乎适得其反。有人可以阐明这个术语吗? 最佳答案 ours和theirs是一个有点令人困惑的概念;执行rebase时加剧:执行merge时,ours指的是您要merge的分支,而theirs指的是您要merge的分支来自。因此,如果您试图在merge过程中解决冲突:使用我们的接受来self们当前所在分

c - strcpy 的 valgrind 错误

此代码应该从userInput空终止字符串中提取路径/*begincreatePath*/staticinlinechar*createPath(char*userInput){/*ThisfunctionretunsthepathfromtheuserInput*/intpathStringLength=0;char*buf=userInput;while(*(buf++)!='')pathStringLength++;char*path=malloc(pathStringLength+1);strncpy(path,userInput,pathStringLength);//mem

c++ - 如何摆脱 Visual Studio 中的 "unsafe"警告/错误(strcpy、sprintf、strdup)

我正在尝试消除一些编译器警告,这些警告说strcpy、sprintf等是不安全的。我明白为什么它们不安全,但我想不出一种修复代码的好方法,以C++风格。这是代码的摘录:extList->names[i]=(char*)malloc(length*sizeof(char));strcpy(extList->names[i],extName);//unsafe//strncpy(extList->names[i],extName,length);//alsounsafe这是消息:C4996:'strcpy':Thisfunctionorvariablemaybeunsafe.Conside

c++ - 错误 : strcpy was not declared in this scope

我在Ubuntug++版本4.4.3中编译的c++问题中遇到了这个问题。我不知道要包含哪些标题来解决这个问题。谢谢centro_medico.cpp:Inconstructor‘Centro_medico::Centro_medico(char*,char*,int,int,float)’:centro_medico.cpp:5:error:‘strcpy’wasnotdeclaredinthisscopecentro_medico.cpp:13:warning:deprecatedconversionfromstringconstantto‘char*’centro_medico.c