c语言strcat问题

#include <stdio.h>
#include <string.h>
main()
{
char ss[10]="1,2,3,4,5";
gets(ss);strcat(ss,"6,7,8");printf("%s\n",ss);
}
运行结果为ABC6789,我不知道ABC杂得出来得?

get(ss); // ss从终端得到输入的字符串
strcat(ss,"6,7,8"); // 将"6,7,8"连接到ss的后面.

结果为ABC6789?
怎么看也只能是ABC6,7,8
其中,ABC是你输入的,6,7,8是后面接上去的.
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-03-07
你不要看那本书了……
全是错……
楼上是对的
第2个回答  2008-03-07
ggdmdf说的没错,只能是ABC6,7,8 ,ABC是你用gets()输入的

请教:linuxcstrcat拼接多次字符串就崩溃?c语言专家能指
Linux环境下c语言中的cstrcat函数拼接多次字符串时出现崩溃现象,原因可能有二。首先,变量未在函数的开头定义,导致在某些系统如Linux中可能出现segmentaion fault错误。其次,strcat函数容易引发缓冲区溢出,引发异常。为避免此类问题,现代库及操作系统提供保护机制,限制串接字符串的长度,如Visual Studio新...

C语言 strcat 问题
1.不对,这是把字符数组a中从第二个字符开始,所有字符都添加到字符串数组b的第二个串 2.也不对,strcat的两个参数必须是char*类型,使用char类型参数是错误的 另外,strcat括号里面的char多余,必须去掉 建议:如果需要将单个字符添加到指定字符串后面,建议你先使用strlen获取字符串长度,存入变量中,...

关于strcat函数
在C语言中,字符串以'\\0'(ASCII码为0)作为终止符。当你使用strcat(str1, str2)时,即使str1的末尾有多个'\\0',函数也会忽略它们,确保连接后的字符串只有一个有效的结束符。例如,如果strA是"abcd\\0",strB是"ABC\\0",strcat后的结果将是"abcdABC\\0",即使strA有额外的'\\0'。同样,如果...

请问C语言中strcat是什么意思?
在这段代码中,出现了语法错误,提示变量<strcat>未定义。这是因为在Pascal中,没有名为<strcat>的函数或变量。根据代码的结构,可能是想要使用字符串拼接函数的功能,应该使用Pascal中的StrUtils单元中的Concat函数,而不是C语言中的strcat函数。因此,将代码中的STRCAT替换为Concat函数即可,示例如下:uses...

C语言 编写函数strcat把给定的两个字符串连接起来
为实现字符串连接,运用C语言编写了一个函数。该函数名叫做"connect",接收两个字符数组参数str1和str2。函数内部首先定义了两个整型变量i和j。i的值被设定为str1数组的长度,而j则用于遍历str2数组直到遇到'\\0'结束符。接着,通过一个for循环,将str2数组中的字符逐个添加到str1数组后部。这个过程...

C语言 strlen()函数的问题
你这个代码是有问题的,使用strcat的时候,第一个字符串的存储空间必须足够大,能放下第一个字符串和第二个字符串加起来的长度,注意这一点。你的问题 第一个 : str1末尾的‘\\0’不会被保留 第二个问题 : 合并后str1的最末尾会有'\\0'的存在,字符串结束标志,...

C语言的字符串函数strcat()和strncat()
)的问题在于程序员粗心。因此,C语言更注重程序员的责任,确保strcat()的使用安全。参考文献:[1] 史蒂芬・普拉达. C Primer Plus (第6版) 中文版[M]. 人民邮电出版社, 2016.[2] C语言strcat()函数:连接字符串- 来源 [3] C语言strncat()函数:在字符串的结尾追加n个字符- 来源 ...

c语言strcat函数怎么用
C语言strcat函数的使用方法 一、函数概述 strcat函数是C语言中用于字符串拼接的函数。它可以将一个字符串拼接到另一个字符串的末尾,并返回目标的指针。二、函数原型 strcat的函数原型为:char *strcat; 其中,dest是目标字符串,src是源字符串。三、使用步骤 1. 声明字符串变量并初始化目标字符串。例...

关于C语言strcat函数的问题?
执行strcat(s1, s2);world中的w放在了原来s1字符串的\\0位置,然后剩下的orld四个字符刚好覆盖了s2内存的4个字节,所以s2的内容已经改变。这一点可以在%p输出s2中看出。64是d的ASCII码,6c是l的ASCII码,72是r的ASCII码,6f是o的ASCII码,这和图中结果是一致的。所以综上这里出错的代码是,s1...

C语言连接复制函数的二道题目求大神告知 谢谢了
首先说一下,是strcat不是stract...然后开始说正题。第一题:答案肯定错了!首先strcat的功能你应该明白吧,strcat(a,b)就是将字符串b的开头与字符串a的结尾相连。这里字符串p是abcd,字符串r是123de,所以连接后的结果为abcd123de。这点我利用程序运行后得到了证实:第二题:当然长度是4了!因为...

相似回答
大家正在搜