本文介绍了strncpy不会切断其余部分的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好!

我有一个char缓冲区:

  char  a [] =   test_string; 



现在我需要将3个字符复制到相同的缓冲区:

 strncpy(a,a, 3  ); 



结果我得到:

test_string

但我需要得到这个:

tes

为什么strncpy()函数不会切断剩下的行?为什么我不能使用相同的源和目标缓冲区?

解决方案

Hello!
I have one char buffer:

char a[] = "test_string";


Now I need to copy 3 characters to te same buffer:

strncpy(a, a, 3);


As a result I get:
test_string
But I need to get this:
tes
Why strncpy() function does not cut off the rest of the line? And why I can't use the same source and destination buffer?

解决方案


这篇关于strncpy不会切断其余部分的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

05-31 15:49