当前位置:首页>开发>正文

C语言字符串函数 C语言中有哪些字符串处理函数

2023-07-15 18:45:28 互联网 未知 开发

 C语言字符串函数 C语言中有哪些字符串处理函数

C语言字符串函数

首先要明白,sizeof不是函数,而是操作符;strlen是函数。
操作符sizeof用来判断对象、类型所占用的内存空间的字节数,strlen是计算一个字符串以字节计的长度。如:sizeof(int)、sizeof(double)、sizeof(char)等是合法的,可以计算出int、double、char这些类型所占用的字节数分别是4、8、1,而用strlen则是非法的。再如:若有char a[20]="123",那么,strlen(a)的结果是3,而sizeof(a)的结果是20;前者是字符串“123”的长度,后者是为数组a分配的内存空间。还有:当计算一个指向字符串的指针时,sizeof得到的是指针本身的长度即固定为4(32位机),而strlen得到的是指针指向的字符串的长度。如:char a[20]="1234567",*p=a,则,sizeof(p)=4,而strlen(p)=7。似乎复杂了点。记住一个原则就好判断:操作符sizeof用来计算系统为对象本身分配的空间(以字节计),函数strlen用来计算字符串的长度(以字节计)。

C语言中有哪些字符串处理函数?

你可以看一下头文件string.h和stdio.h里面的相关函数声明,好多好多。
这里就不一一列出了……比如下面列出的只是其中一部分……
_CRTIMP char * __cdecl strcpy(char *, const char *)
_CRTIMP char * __cdecl strcat(char *, const char *)
_CRTIMP int __cdecl strcmp(const char *, const char *)
_CRTIMP size_t __cdecl strlen(const char *)
_CRTIMP char * __cdecl strchr(const char *, int)
_CRTIMP int __cdecl _strcmpi(const char *, const char *)
_CRTIMP int __cdecl _stricmp(const char *, const char *)
_CRTIMP int __cdecl strcoll(const char *, const char *)
_CRTIMP int __cdecl _stricoll(const char *, const char *)
_CRTIMP int __cdecl _strncoll(const char *, const char *, size_t)
_CRTIMP int __cdecl _strnicoll(const char *, const char *, size_t)
_CRTIMP size_t __cdecl strcspn(const char *, const char *)
_CRTIMP char * __cdecl _strdup(const char *)
_CRTIMP char * __cdecl _strerror(const char *)
_CRTIMP char * __cdecl strerror(int)
_CRTIMP char * __cdecl _strlwr(char *)
_CRTIMP char * __cdecl strncat(char *, const char *, size_t)
_CRTIMP int __cdecl strncmp(const char *, const char *, size_t)
_CRTIMP int __cdecl _strnicmp(const char *, const char *, size_t)
_CRTIMP char * __cdecl strncpy(char *, const char *, size_t)
_CRTIMP char * __cdecl _strnset(char *, int, size_t)
_CRTIMP char * __cdecl strpbrk(const char *, const char *)
_CRTIMP char * __cdecl strrchr(const char *, int)
_CRTIMP char * __cdecl _strrev(char *)
_CRTIMP size_t __cdecl strspn(const char *, const char *)
_CRTIMP char * __cdecl strstr(const char *, const char *)
_CRTIMP char * __cdecl strtok(char *, const char *)
_CRTIMP char * __cdecl _strupr(char *)
_CRTIMP size_t __cdecl strxfrm (char *, const char *, size_t)

C语言关于字符串的操作函数有哪些

string.h头文件中包含的字符串函数
void *memcpy(void *dest, const void *src, size_t n)//将n字节长的内容从一个内存地址复制到另一个地址;如果两个地址存在重叠,则最终行为未定义
void *memmove(void *dest, const void *src, size_t n)//将n字节长的内容从一个内存地址复制到另一个地址;与memcpy不同的是它可以正确作用于两个存在重叠的地址
void *memchr(const void *s, char c, size_t n)//在从s开始的n个字节内查找c第一次出现的地址并返回,若未找到则返回NULL
int memcmp(const void *s1, const void *s2, size_t n)//对从两个内存地址开始的n个字符进行比较
void *memset(void *, int, size_t)//用某种字节内容覆写一段内存空间
char *strcat(char *dest, const char *src)//在字符串dest之后连接上src
char *strncat(char *dest, const char *src, size_t n)//从src截取n个字符连接在字符串dest之后,返回dest字符串
char *strchr(const char* str, int ch)//从字符串str头开始查找字符ch首次出现的位置
char *strrchr(const char* str,int ch)//从字符串str尾开始查找字符ch首次出现的位置
int strcmp(const char *, const char *)//基于字典顺序比较两个字符串
int strncmp(const char *, const char *, size_t)//基于字典顺序比较两个字符串,最多比较n个字节
int strcoll(const char *, const char *)//基于当前区域设置的字符顺序比较两个字符串
char *strcpy(char* str1, const char* str2)//将str2拷贝给strchar *strncpy(char* str1, const char* str2, size_t n)//截取str2的n个字符拷贝给strchar *strerror(int)//返回错误码对应的解释字符串,参见errno.h(非线程安全函数)
size_t strlen(const char *)//返回一个字符串的长度
size_t strspn(const char *s, const char *strCharSet)//从字符串s的起始处开始,寻找第一个不出现在strCharSet中的字符,返回其位置索引值。换句话说,返回从字符串s的起始位置的完全由strCharSet中的字符构成的子串的最大长度。strspn为string span的缩写。不支持多字节字符集。
size_t strcspn(const char *s, const char *strCharSet)//从字符串s的起始处开始,寻找第一个出现在strCharSet中的字符,返回其位置索引值。换句话说,返回从字符串s的起始位置的完全由不属于strCharSet中的字符构成的子串的最大长度。strcspn为string complement span的缩写。不支持多字节字符集。
char *strpbrk(const char *s, const char *strCharSet)//在字符串s中查找strCharSet中任意字符第一次出现的位置的指针值。strpbrk为string pointer break缩写。不支持多字节字符集。
char *strstr(const char *haystack, const char *needle)//在字符串haystack中查找字符串needle第一次出现的位置,heystack的长度必须长于needle
char *strtok(char *strToken, const char *strDelimit )//将一个字符串strToken依据分界符(delimiter)分隔成一系列字符串。此函数非线程安全,且不可重入;但MSVC实现时使用了thread-local static variable因而是线程安全的单仍然是不可重入,即在单线程中不能对两个源字符串交替调用该函数来分析token,应当对一个字符串分析完成后再处理别的字符串。
size_t strxfrm(char *dest, const char *src, size_t n)//根据当前locale转换一个字符串为strcmp使用的内部格式

c语言考试,问常用字符串操作函数有那几个?

1.puts(字符数组) 输出
2.gets(字符数组) 输入
3.strcat(字符数组1,字符数组2) 字符串2接到字符串1的后面
4.strcpy和strncpy(字符数组1,字符串2,m) 将字符串2的前m个字符拷到str1中,最后加
5.strcmp(字符串1,字符串2) 两字符串比较
6.strlen(字符数组) 字符串的实际长度(不包括)
7.strlwr(字符串) 大写转换为小写
8.strupr(字符串) 小写转换为大写

求所有C#字符串函数大全及使用方法。


C#字符串函数大全将包括Len Len(string|varname) 、Trim Trim(string) 、Ltrim Ltrim(string)等多项内容,希望本文能对大家有所帮助。

LenLen(string|varname)返回字符串内字符的数目,或是存储一变量所需的字节数。

TrimTrim(string)将字符串前后的空格去掉

LtrimLtrim(string)将字符串前面的空格去掉

RtrimRtrim(string)将字符串后面的空格去掉

MidMid(string,start,length)从string字符串的start字符开始取得length长度的字符串,如果省略第三个参数表示从start字符开始到字符串结尾的字符串

LeftLeft(string,length)从string字符串的左边取得length长度的字符串

RightRight(string,length)从string字符串的右边取得length长度的字符串

LCaseLCase(string)将string字符串里的所有大写字母转化为小写字母

UCaseUCase(string)将string字符串里的所有大写字母转化为大写字母

StrCompStrComp(string1,string2[,compare])返回string1字符串与string2字符串的比较结果,如果两个字符串相同,则返回0,如果小于则返回-1,如果大于则返回1

InStrInStr(string1,string2[,compare])返回string1字符串在string2字符串中第一次出现的位置

SplitSplit(string1,delimiter[,count[,start]])将字符串根据delimiter拆分成一维数组,其中delimiter用于标识子字符串界限。如果省略,使用空格("")作为分隔符。

count返回的子字符串数目,-1指示返回所有子字符串。

start为1执行文本比较;如果为0或者省略执行二进制比较。

ReplaceReplace(expression,find,replacewith[,compare[,count[,start]]])返回字符串,其中指定数目的某子字符串(find)被替换为另一个子字符串(replacewith)。

C#字符串函数大全1、Len函数示例:

下面的示例利用Len函数返回字符串中的字符数目:

Dim MyString MyString = Len("VBSCRIPT") MyString 包含 8。 C#字符串函数大全2、Trim、Ltrim、Rtrim函数示例:

下面的示例利用LTrim,RTrim,和Trim函数分别用来除去字符串开始的空格、尾部空格、

开始和尾部空格:

Dim MyVar MyVar = LTrim(" vbscript ") MyVar 包含 "vbscript "。 MyVar = RTrim(" vbscript ") MyVar 包含 " vbscript"。 MyVar = Trim(" vbscript ") MyVar 包含"vbscript"。 C#字符串函数大全3、Mid函数示例:

下面的示例利用Mid函数返回字符串中从第四个字符开始的六个字符:

DimMyVar

MyVar=Mid("VB脚本isfun!",4,6)MyVar包含"Script"。

C#字符串函数大全4、Left函数示例:

下面的示例利用Left函数返回MyString的左边三个字母:

Dim MyString, LeftString MyString = "VBSCript" LeftString = Left(MyString, 3) LeftString 包含 "VBS C#字符串函数大全5、Right函数示例:

下面的示例利用Right函数从字符串右边返回指定数目的字符:

Dim AnyString, MyStr AnyString = "Hello World" 定义字符串。 MyStr = Right(AnyString, 1) 返回 "d"。 MyStr = Right(AnyString, 6) 返回 " World"。 MyStr = Right(AnyString, 20) 返回 "Hello World"。 C#字符串函数大全6、LCase函数示例:

下面的示例利用LCase函数把大写字母转换为小写字母:

Dim MyString Dim LCaseString MyString = "VBSCript" LCaseString=LCase(MyString)LCaseString包含"vbscript"。

C#字符串函数大全7、UCase函数示例:

下面的示例利用UCase函数返回字符串的大写形式:

DimMyWord

MyWord=UCase("HelloWorld")返回"HELLOWORLD"。

C#字符串函数大全8、StrComp函数示例:

下面的示例利用StrComp函数返回字符串比较的结果。如果第三个参数为1执行文本比较;如果第三个参数为0或者省略执行二进制比较。

DimMyStr1,MyStr2,MyComp

MyStr1="ABCD":MyStr2="abcd"定义变量。

MyComp=StrComp(MyStr1,MyStr2,1)返回0。

MyComp=StrComp(MyStr1,MyStr2,0)返回-1。

MyComp=StrComp(MyStr2,MyStr1)返回1。

C#字符串函数大全9、InStr示例:

下面的示例利用InStr搜索字符串:

DimSearchString,SearchChar,MyPos

SearchString="XXpXXpXXPXXP"

SearchChar="P"

MyPos=Instr(SearchString,SearchChar)返回9.

注意:返回的不是一个字符串在另一个字符串中第一次出现的字符位置,而是字节位置。

C#字符串函数大全10、Split函数示例:

DimMyString,MyArray,Msg

MyString="VBScriptXisXfun!"

MyArray=Split(MyString,"x",-1,1)

MyArray(0)contains"VBScript".

MyArray(1)contains"is".

MyArray(2)contains"fun!".

Response.Write(MyArray(0))

C#字符串函数大全11、Replace函数示例:

Replace("ABCD","BC","12")得到A12D

C 中的字符串处理函数都有哪些?主要现在想急用 连接字符串 的函数!......谢谢!~

连接是 strcat 把第二个字符串复制到第一个字符串的尾部,并且返回第一个字符串的地址
形式为 strcat(a,b)a为第一个字符串首地址,b为第二个字符串首地址
例如字符串组c[10],d[10]将d连接到c,c的长度加上d的长度不能超过9,因为我这里c声明的是c[10]
只要调用函数strcat(c,d)就可以了,输出的c就是连接后的字符串
strcpy 把第二个字符串复制到第一个字符串结尾,去掉第一个字符串的结尾符
strncpy 把第二个字符串的前n个字符复制到第一个字符串的结尾,同上。
strtok
strchr
strcspn
strpbrk
strrchr
strspn
strstr
strcmp 安字典序 比较两个字符串,大于则返回1,等于返回0,小于返回-strncmp
strlen 统计字符串长度,不包括结尾的
我打的有注释的是比较常用的……
这是书上的……容我一点点打上来……

我漏了你的问题补充了……

你这个的话
有两个字符数组:A[100]="000000",B[4]="acdf",
调用函数后成为A[100]="00acdf"。
第一,B[5]不能为B[4],因为你初始化了4个字符,而系统会在最后接
你这样定义最后会出来随机的东东……

要实行你这样子的连接……好像用不到库函数啊……

你这样子的话
比如你那道题,我直接写给你代码吧
int i,j
i=strlen(A)
j=strlen(B)
i--
while(j--)
{
A[i]=B[j]
i--
}
应该是对的吧……我没调试……有空再说吧……

最新文章