字符数组函数(c语言,字符数组函数)
本文目录
c语言,字符数组函数
#include 《stdio.h》/*比较两个字符串*//*src、dst相等 return 1*//*src比dst短 return -2*//*src比dst长 return 2*//*src、dst长度一致但不相等 return -1*/int stringCmp (char *src, char *dst) { if (strlen (src) 《 strlen (dst))return -2;else if (strlen (src) 》 strlen (dst))return 2;else {while (*src && *dst) {if (*src != *dst)return -1;src++;dst++;}return 1;}}/*合并两个字符串*/void mergeString(char* str1, char* str2, char* merge) {while (*merge++ = *str1++); /*复制str1并将指针移动到字符串的末尾的下一个位置*/merge--; /*退到字符串的末尾*/while (*merge++ = *str2++); /*从末尾(\0)的位置开始将str2拷贝进来*/*merge = ’\0’;}int main(void) {char *str1_1="hel",*str1_2="lo", *merge1;char *str2_1="ness",*str2_2="happy", *merge2;char *str3_1="hi",*str3_2="hi", *merge3;char *str4_1="hello",*str4_2="world", *merge4;puts ("第1组字符串:");puts (str1_1);puts (str1_2);if (stringCmp (str1_1, str1_2) == 1)puts (str1_1);else if (stringCmp (str1_1, str1_2) == -2) {mergeString (str1_2, str1_1, merge1);puts (merge1);}else if (stringCmp (str1_1, str1_2) == 2 || stringCmp (str1_1, str1_2) == -1) {mergeString (str1_1, str1_2, merge1);puts (merge1);}putchar (’\n’);puts ("======================================================");putchar (’\n’);puts ("第2组字符串:");puts (str2_1);puts (str2_2);if (stringCmp (str2_1, str2_2) == 1)puts (str2_1);else if (stringCmp (str2_1, str2_2) == -2) {mergeString (str2_2, str2_1, merge2);puts (merge2);}else if (stringCmp (str2_1, str2_2) == 2 || stringCmp (str2_1, str2_2) == -1) {mergeString (str2_1, str2_2, merge2);puts (merge2);}putchar (’\n’);puts ("======================================================");putchar (’\n’);puts ("第3组字符串:");puts (str3_1);puts (str3_2);if (stringCmp (str3_1, str3_2) == 1)puts (str3_1);else if (stringCmp (str3_1, str3_2) == -2) {mergeString (str3_2, str3_1, merge3);puts (merge3);}else if (stringCmp (str3_1, str3_2) == 2 || stringCmp (str3_1, str3_2) == -1) {mergeString (str3_1, str3_2, merge3);puts (merge3);}putchar (’\n’);puts ("======================================================");putchar (’\n’);puts ("第4组字符串:");puts (str4_1);puts (str4_2);if (stringCmp (str4_1, str4_2) == 1)puts (str4_1);else if (stringCmp (str4_1, str4_2) == -2) {mergeString (str4_2, str4_1, merge4);puts (merge4);}else if (stringCmp (str4_1, str4_2) == 2 || stringCmp (str4_1, str4_2) == -1) {mergeString (str4_1, str4_2, merge4);puts (merge4);}putchar (’\n’);puts ("======================================================");putchar (’\n’);getch (); /*屏幕暂留*/return 0;}
运行结果
C++ 字符数组比较函数
strcmp( const char *string1, const char *string2 );以下是msdn的解释Compare strings.Routine Required Header strcmp 《string.h》 wcscmp 《string.h》 int strcmp( const char *string1, const char *string2 );int wcscmp( const wchar_t *string1, const wchar_t *string2 );Parametersstring1, string2 Null-terminated strings to compare LibrariesAll versions of the C run-time libraries.Return ValueThe return value for each of these functions indicates the lexicographic relation of string1 to string2.Value Relationship of string1 to string2 《 0 string1 less than string2 0 string1 identical to string2 》 0 string1 greater than string2
用函数void+fun(char*s)求字符数组s的有效长度
在 C 语言中,可以使用 strlen 函数来求字符数组的有效长度。该函数定义在头文件 string.h 中,该头文件应该在使用 strlen 函数之前包含进来。例如,可以使用以下代码来求字符数组 s 的有效长度:#include 《stdio.h》#include 《string.h》void fun(char* s) {// 求字符数组 s 的有效长度int len = strlen(s);printf("The length of the string is %d.\n", len);}请注意,strlen 函数仅返回字符数组中的有效字符数量,它不会包括结尾的空字符(’\0’)。因此,如果在字符数组的末尾添加了一个空字符,那么 strlen 函数的返回值可能会比实际的字符数量少 1。例如,对于字符数组 s,如果它的内容为 "Hello, World!\0",那么调用 strlen 函数的返回值为 13,因为它只包含 "Hello, World!" 这 13 个字符,并不包含字符数组末尾的空字符。
本文相关文章:
cesium的datasource(Cesium快速上手9-Camera和Scene中的其他函数使用)
2024年9月9日 18:01
day函数是什么意思(函数DAY($A$3)*4-4 代表什么意思)
2024年9月8日 10:45
递归算法解决八皇后问题(用递归函数设计八皇后问题的回溯算法C++代码)
2024年9月8日 09:01
c语言lseek函数的用法(问一个关于lseek函数的效率问题)
2024年9月7日 14:45
python递归函数考试题(python题目:要求用递归、递推和Lambda三种方式编写power(n,x)函数)
2024年9月6日 03:40
c语言中函数abs 和 fabs有什么区别?C语言中fabs表示什么意思
2024年9月4日 08:10
matlablength函数用法(如何使用MATLAB作出如下函数ns关于x变化的函数,x的取值范围为0到10)
2024年9月1日 04:40
php截取字符串以特定的字符分割(PHP怎么用substr函数截取字符串中的某部分)
2024年9月1日 03:45
small函数相反的函数(excel中small函数有什么作用)
2024年9月1日 01:40
easyx安装教程(【C语言】如何在VC++6.0中使用TC2.0特有的函数呢)
2024年8月31日 06:40
更多文章:
城市帝国赤字怎么办 老是赤字解决办法攻略?城市帝国快速表决和普通表决有什么区别
2024年5月9日 11:55
whatsapp安卓版下载(如何在电脑上安装WhatsApp)
2024年3月31日 15:05
流氓软件dll删不掉(求助,有个流氓DLL删除不掉,一删除自动)
2024年6月27日 06:44
魔兽世界手机安全令牌(魔兽世界手机安全令牌代码怎么查看啊,不会弄)
2024年5月2日 13:28
红白机游戏是什么语言写的?谁有最全的FC(红白机)游戏名单列表
2024年9月5日 09:40
在福建古田县要到哪个医院做包皮手术,贵不贵!?古田县医院有哪几家
2024年6月10日 07:52