精华内容
下载资源
问答
  • c语言中的字符串

    2013-10-28 18:28:37
    3. C语言中的字符串是以’\0’结束的字符数组 4. C语言中的字符串可以分配于栈空间,堆空间或者只读存储区 #include #include int main() { char s1[] = {'H','e','l','l','o'}; char s2[]

    1.  从概念上讲,C语言中没有字符串数据类型

    2. 在C语言中使用字符数组来模拟字符串

    3. C语言中的字符串是以’\0’结束的字符数组

    4. C语言中的字符串可以分配于栈空间,堆空间或者只读存储区


    #include <stdio.h>

    #include<malloc.h>


    int main()
    {
    char s1[] = {'H','e','l','l','o'};
    char s2[] = {'H','e','l','l','o','\0'}; //s2 save in stack
    char* s3 = "Hello"; //s3 save in readonly memory
    char* s4 = (char*)malloc(6*sizeof(char)); //s4 save in heap


    s4[0] = 'H';
    s4[1] = 'e';
    s4[2] = 'l';
    s4[3] = 'l';
    s4[4] = 'o';
    s4[5] = '\0';


    free(s4);


    s3[0] = 'h'; //error:s3 save in readonly memory

    return 0;

    }

    gcc编译结果:


    展开全文
  • C语言中的字符串

    2013-07-19 18:19:21
    C语言中的字符串是以‘\0’结束的字符数组 C语言中的字符串可以分配于栈空间,堆空间或者只读存储区 char s1[] = {'H', 'e', 'l', 'l', 'o'}; //没有‘\0’,所以s1只不过是个单纯的字符数组 char s2[] = {'H', 'e'...

    从概念上讲,C语言中没有字符串类型

    在C语言中使用字符数组来模拟字符串

    C语言中的字符串是以‘\0’结束的字符数组

    C语言中的字符串可以分配于栈空间,堆空间或者只读存储区

    char s1[] = {'H', 'e', 'l', 'l', 'o'};  //没有‘\0’,所以s1只不过是个单纯的字符数组

    char s2[] = {'H', 'e', 'l', 'l', 'o', '\0'}; //也是一个字符数组,但是最后一个元素是‘\0’,因此s2就成了C语言中的字符串,并且这么写的话这个字符串是在栈空间分配的

    char* s3 = "Hello";  //是C语言中最常规的写字符串的方法,这样的字符串存储于只读存储区,相当于一个字符串常量,不能改变里面的内容

    char* s4 = (char*)malloc(6*sizeof(char));  

    s4[0] = 'H';

    s4[0] = 'e';

    s4[0] = 'l';

    s4[0] = 'l';

    s4[0] = 'o';

    s4[0] = '\0';           //malloc返回堆空间,因此s4指向的字符串是在堆上分配的空间

    free(s4);

    在栈和堆上分配的字符串都可以自由改动里面的内容,但是在只读存储区上字符串里的内容不可以改变


    字符串的长度

    字符串的长度就是字符串所包含字符的个数

    C语言中的字符串长度指的是第一个‘\0’字符前出现的字符个数

    C语言中通过‘\0’结束符来确定字符串的长度

    例1:

    char g[100];
    int main()
    {
        g[0] = 'H';
        g[1] = 'e';
        g[2] = 'l';
        g[3] = 'l';
        g[4] = 'o';
        g[5] = '\0';

        printf("length = %d\n", strlen(g));

        printf("size = &d\n", sizeof(g));

        return 0;
    }

    编译运行得:

    改为:

    char g[100];
    int main()
    {
        g[0] = 'H';
        g[1] = 'e';
        g[2] = 'l';
        g[3] = 'l';
        g[4] = 'o';
        g[5] = '\0';

        g[6] = 'H';
        g[7] = 'e';
        g[8] = 'l';
        g[9] = 'l';
        g[10] = 'o';

        printf("length = %d\n", strlen(g));

        printf("size = &d\n", sizeof(g));

        return 0;
    }

    编译运行得:,结果不变,因为字符串只算第一个‘\0’字符前面的所有字符,后面无论是什么都不值字符串的一部分了,但是后面的和前面的所有内容都是字符数组的内容。

    警告:

    例2

    char* a = "123";

    char* b = "1234";

    if( strlen(a) >= strlen(b) )  //正常执行

    {

            //......

    }

    if( strlen(a) - strlen(b)   >=  0 )   //两个无符号数相减总是大于等于0的,所以该if总是执行

    {

            //......

    }

    strlen()的返回值是用无符号数定义的,因此相减不可能产生负数,以上的语句不等价


    面试题:

    size_t strlen(const char* s)
    {
        size_t length = 0;  
        assert(s);          //检测参数是否为空
        
        while( *s++ )
        {
            length++;
        }
        
        return length;
    }

    使用一条语句实现strlen:

    size_t strlen(const char* s)

    {

               return ( assert(s), ( *s ? (strlen(s+1) + 1) : 0 ));

    }      //逗号表达式先assert(),然后三目运算,采用递归实现求长度


    注意:

    一般情况下,千万千万不要自行编写C标准库已经提供的函数

    标准库有时会使用汇编语言实现,目的就是为了充分利用机器所提供的特殊指令以追求最大速度

    复用已经存在的函数库会更高效


    不受限制的字符串函数

    不受限制的字符串函数是通过寻找字符串的结束符'\0'来判断长度,无需提供字符串长度信息

    字符串复制:char* strcpy(char* dst, const char* src);

    字符串连接:char* strcat(char* dst, const char* src);

    字符串比较:int strcmp(const char* s1, const char* s2);

    注意:

    不受限制的字符串函数都是以'\0'作为结尾标记来进行的,因此输入参数中必须包含'\0'。参数不能是字符数组,否则会调用出错。

    strcpy和strcat必须要保证目标字符数组的剩余空间足以保存整个源字符串。

    strcmp以0值表示两个字符串相等

            .第一个字符串大于第二个字符串的时候返回值大于0

            .第一个字符串小于第二个字符串的时候返回值小于0

    strcmp不会修改参数值,但依然以'\0'作为结束符


    面试题:

    实现库函数strcpy

    char* strcpy(char* dst, const char* src)

    {

             char* ret = dst;

             assert(dst && src);

             while( (*dst++ = *src++) != '\0' );

             return ret;

    }


    长度受限制的字符串函数

    长度受限制的字符串函数接受一个现实的长度参数用于限定操作的字符数

    字符串复制:char* strncpy(char* dst, const char* src, size_t len);

    字符串连接:char* strncat(char* dst, const char* src, size_t len);

    字符串比较:int strncmp(const char* s1, const char* s2, size_t len);

    以后的工作当中,如果非要调用字符串库函数的话,一定要调用长度受限制的字符串函数,一定要手工指定长度究竟是多少字符,因为这一组函数比长度不受限制的字符串函数要安全的多。

    注意:

    strncpy只复制只复制len个字符到目标字符串

          .当源字符串的长度小于len时,剩余的空间以'\0'填充

          .当源字符串的长发大于len时,只有len个字符会被复制,且它将不会以'\0'结束

    strncat最多从源字符串中复制len个字符到目标字符串中

          .strncat总是在结果字符串中后面添加'\0'

          .strncat不会用'\0'填充目标串中的剩余空间

    strncmp只是比较len个字符是否相等

            .相等返回0,大于返回值大于0,小于返回值小于0




    展开全文
  • C语言中的字符串,转义字符以及注释

    千次阅读 2019-03-23 11:42:22
    首先我们来看C语言中的字符串.例如: #include <stdio.h> int main(){ printf("Hello world\n"); } 这个程序算是我们刚开始接触的一个最为简单的程序,而在这个程序当中.双引号之间的Hello world就是字符串,...

    首先我们来看C语言中的字符串.例如:

    #include <stdio.h>
    int main(){
    	printf("Hello world\n");
    }
    

    这个程序算是我们刚开始接触的一个最为简单的程序,而在这个程序当中.双引号之间的Hello world就是字符串,通常我们利用printf函数来实现打印字符串的目的.位于Hello world之后的\n表示回车,是转义字符的一种,后面我们还会详细说明.
    这种由双引号(Double Quote)引起来的一串字符称为字符串字面值(String Literal),简称字符串.
    这里我们要注意,字符串结束的标志是一个\0(即反斜杠+…).所以在计算字符串长度的时候\0是结束标志,不能算作是字符串的内容.
    接下来我们来看转义字符,转义字符到底有什么用呢?其实我们最常见的就是我们保存文件时的目录,比如这样:
    d:\study\test.c
    也就是说我们想要在屏幕上打印出这样一串字符,我们该如何实现呢?

    #include <stdio.h>
    int main (){
    	printf("d:\study\test.c\n");
    	return 0;
    }
    思考一下这样可以吗?我们来看一下运行结果.
    

    结果如图
    观察运行结果,这里我们就要提出我们的转义字符了.单从名字上来看,转义字符就是转变的意思,我们先来看一些常见的转义字符.
    ’ 用于表示字符常量’
    " 用于表示一个字符串内部的双引号
    \ 用于表示一个反斜杠,防止它被解释为一个转义序列符.
    \n 换行
    \t 水平制表符

    由此为了实现我们打印上述字符串的目的,我们要合理运用转义字符,所以上述代码应做出以下修改:

    #include <stdio.h>
    #include <string.h>
    int main(){
    	printf("d:\\study\\test.c\n");
    }
    看完转义字符,我们再来看一个小思考,这个程序如下:
    #include <stdio.h>
    int main(){
    	printf("%d\n",strlen("abcdef"));				//strlen 对应头文件 #include <string.h>,功能是读取字符串长度
    	printf("%d\n",strlen("c:\test\328\test.c"));
    }
    

    大家可以试着运行一下.

    最后我们来看C语言中的注释.
    在我们编写程序的时候,代码中如果出现了不需要的地方,我们可以直接将其删掉,也可以注释掉;或者代码中有一些比较难懂的地方,我们需要加一些注释文字,便于读程序时的理解.
    常见的注释有两种:
    (i)/*xxxxxxxxxxxxxxxxxxxxxxx*/
    这种方法会注释掉//之间所有的东西.(由于无法嵌套,使用时要多加注意)
    (ii)//xxxxxxxxxxxxxxxxxxxxxxx
    这种方法通常是用来注释某一行程序,当然也可是多行.(使用起来较为方便,看起来也会比较容易)

    展开全文
  • 6、C语言中的字符串

    千次阅读 2012-07-25 21:15:45
    一、C语言中的字符串 字符串是一种重要的数据类型,但是C语言并没有显示的字符串数据类型,不像java有String ,OBC有NSString等等。所以C语言中的字符串一般以字符串常量的形式出现或者存储与字符数组中。 每个...

    一、C语言中的字符串

    字符串是一种重要的数据类型,但是C语言并没有显示的字符串数据类型,不像java有String ,OBC有NSString等等。所以C语言中的字符串一般以字符串常量的形式出现或者存储与字符数组中。

    每个字符串的末尾都添加了代码值为0的特殊字符,这个字符称为空字符(不要和NULL搞混C中的字符串),写作\0。字符串,总是由\0字符结束,所以字符串的长度永远比字符串中的字符数多1。可以将\0字符添加到字符串的结尾,但是这会使字符串的末尾有两个\0的字符。\0 即是字符串结束的标志。


    二、字符数组存储字符串

    声明如:char  str[4];

    初始化如:str="abc";

    例子1:

    int main(void)
    {
        char str[3]=“123”;
        printf("%s",str);
        return 1;
    }

    这样的程序,编译的时候直接不能让通过,会报下面的错误:

    : array bounds overflow。

    因为,这样的写法就是声明并初始化一个字符串,而字符串必须使用\0结尾,所以数组才会越界。如果像下面:

    例子2:

    int main(void)
    {
        char str[3]={'1','2','3'};
        printf("%s",str);
        return 1;
    }

    这样写,就是声明并初始化一个字符数组,当然不会报错,可是看输出

    结果却和奇怪,其实一点也不用奇怪,用%s的形式输出一个字符数组,那么就会把这个字符数组当字符串输出,可是他并不是一个正确的字符串格式,所以只能根据数组指针的后移,一直不断的输出,直到遇到内存中随机的出现的\0才会结束,所以才会有这样的结果。

    所以在声明和初始化一个字符串的时候一定要注意。一般可以这样去声明和初始化一个字符串:

    char str[]="123123asda";

    数组的长度自己并不指定,而是有系统自己确定,这样就不会出现数组越界的问题了。


    三、使用库函数操作字符串

    字符串函数在<string.h>头文件中声明,所以如果要使用它们,需要在程序的开始处使用include包含进来。

    1、复制字符串

    strcpy

    函数原型:char *strcpy(char *destin, char *source);

    参数类型为字符数组名,destin为目标字符串,source为源字符串。将字符串source的内容复制到destin,注意该函数不检查数组长度,所以要确保destin的数组能够容纳source中的所有字符。


    另一个可用的函数strncpy

    函数原型;char * strncpy(char *dest, char *src, size_t n);

    将字符串src中最多n个字符复制到字符数组dest中(它并不像strcpy一样遇到NULL才停止复制,而是等凑够n个字符才开始复制),返回指向dest的指针。第三个参数是一个size_t类型的整数。它指定了要复制的字符数n,举例:


    2、检测字符串的实际长度

    strlen

    函数原型: size_t strlen(conset char *s);

    功能: strle函数求的是字符串的长度,它求得方法是从字符串的首地址开始到遇到第一个'\0'停止计数,如果你只定义没有给它赋初值,这个结果是不定的,它会从字符串首地址一直记下去,直到遇到'\0'才会停止。  

    sizeof(string)可以输出一个字符串占的字节数,因为一个char是一个字节,在加上结束符\0(可能不止一个\0),所以sizeof得出的结果比字符串实际的长度大。

    而是用strlen(string)  则可以得出字符串的实际长度。


    size_t数据类型

    类型size_t在标准库头文件<stddef.h>中定义,它也是运算符sizeiof()的返回类型。类型size-t定义了一个无符号的整数类型unsigned int。之所以要这么做,是考虑到代码的可移植性。在各种C语言中,sizeof()和strlen()函数的返回类型互不相同。这是由编译器的作者来决定的。把这个类型定义为size_t,并把size_t定义放在头文件中,非常便于在代码中包容这种依赖性。

    所以,要正确的使用size_t类型,因为它是一个无符号整数,在表达式中使用无符号数可能导致不可预料的结果,如下:

    if(strlen(x) >= strlen(y))

    if(strlen(x) - strlen(y)>=0)

    上面这两个表达式看起来是相当的,实际上它们是不等的。第一条语句会按照预想的工作,但是第二条语句就永远都是成立的,因为两个无符号整数的运算结果是一个无符号整数,永运都是>=0的。

    所以要注意了,可以将得到的size_t强转为int类型,在用于计算。


    3、连接字符串

    strcat

    函数原型: char *strcat(char *destin, char *source);

    它会将字符串source连接到字符串destin的末尾,并且返回destin


    也可以使用strncat

    函数原型:用 法: char *strcat(char *destin, char *source,size_t n);

      第三个参数也是size_t的类型,这个函数是表示将字符串source的前面n个字符连接到destin的末尾



    4、比较字符串

    strcmp

    函数原型:int strcmp(char *str1, char *str2);

    如果str1>str2 返回值>0,如果str1=str2 返回值=0,如果str1<str2 返回值<0。


    strncmp

    函数原型: int strncmp(char *str1, char *str2, unsigned maxlen);

    比较两个字符串的前maxlen个字符


    strnicmp

    函数原型: int strnicmp(char *str1, char *str2, unsigned maxlen);

    比较两个字符串的前maxlen个字符,不区分大小写。


    5、搜索字符串

    strchr

    函数原型:char *strchr(char *str, char c);

    第一个参数是要搜素的字符串(是char数组的地址),第二个参数是要查找的字符。这个函数会从字符串的开头开始搜索,返回在字符串中找到的第一个给定字符的地址。这是一个在内存中的地址,其类型为char*,表示“char的指针”,所以要存储返回值,必须创建一个能存储字符地址的变量。如果没有找到给定的字符,函数就会返回NULL,他相当于0,表示这个指针没有指向任何对象。

    举例:

    #include <stdio.h>
    #include <string.h>
    
    int main(void)
    {
        char str1[]="abcd";
        char *p=strchr(str1,'c');
        if(p!=NULL)
        {
            int a=p-str1;
            printf("%d",a);
        }
        return 1;
    }

    strtchr和strchr非常类似,只不过是从字符串末尾开始查找。


    strstr

    函数原型;_CRTIMP char *  __cdecl strstr(const char *, const char *);

    它查找一个字符串中的子字符串,返回找到的第一个子字符串的位置指针。如果找不到匹配的字符串串,就返回NULL。

    #include <stdio.h>
    #include <string.h>
    
    int main(void)
    {
    	char str1[]="abcd";
    	char str2[]="cd";
    	char *p=strstr(str1,str2);
    	if(p!=NULL)
    	{
    		int a=p-str1;
    		printf("%d",a);
    	}
    	return 1;
    }


    6、分析和检测字符串

    islower()    小写字符

    isupper()    大写字母

    isalpha()   大写或小写字母

    isalnum()  大写或小写字符,或数字

    isprintf()   可打印字符,包括空格

    isgraph()  可打印字符,不包括空格

    isdigit()   十进制数字的字符('0'~'9')

    isxdigit()   十六进制数字的字符('0'~'9'、‘A’~'F','a'~'f')

    isblank()  标准空白字符(空格、'\t')

    isspace()   空白字符(空格、'\n','\t','\'v','r\','\f')

    ispunct()     isspace()和isalnum返回false的可打印字符



    toupper()  转变为大写字符

    tolower()  转变为小写字符

    atof()      从字符串中生成double类型的值

    atoi()      从字符串中生成int类型的值

    atol()      从字符串中生成long类型的值

    atoll()    从字符串中生成long  long类型的值


    四、使用宽字符

    使用宽字符串与使用前面的字符串一样简单。宽字符串存储在wchar_t类型的数组中,宽字符串常量只需要在前面加上L修饰符。举例:

    wchar_t proverb[]=L"A kls a";

    wchar_t字符占用2个字节。proverb字符串包含7个字符和终止空字符,所以占用16个字节。

    如果要使用printf()将字符串输出到屏幕上,必须使用%S格式指定符,而不是用于ASCII字符串的%s,

    如果使用了%s,printf()函数就假定字符串包含单字节字符,这样结果就不正确了。


    宽字符的操作函数:

    <wchar.h>头文件声明了一些函数来操作宽字符串,它们对应于处理一般字符串的函数。







    展开全文
  • C语言中的字符串的初始化,以及相关方法 由外部对字符串初始化的方法 设定义字符串为 char str[10]; 1.for循环+scanf(“%c”,str);一个一个输入字符 2.直接用scanf(“%s”,str);直接输入一整串字符 3.包含在头文件...
  • C语言中的字符串初始化

    万次阅读 2019-03-09 18:30:33
    1、C语言没有字符串类型,通过字符数组模拟,C语言字符串,以字符‘\0’, 数字0。 2、数组指定长度后,后面没有赋值元素,自动补0。 char buf[100] = { 'a', 'b', 'c' }; 3、所有元素赋值为0。 char ...
  • c语言中没有c++字符串数据类型,而是通过字符数组去模拟字符串字符串以'\0',即0作为结束符。 需要注意的是: 一、若是使用未指定长度的字符数组来存储字符,同时未指定结束符,那么这就不是字符串。比如 char ...
  • C语言中的字符串操作函数

    千次阅读 2018-04-23 16:35:47
    原创文章,转载请注明出处https://blog.csdn.net/aaron_lyn1985/article/details/80048369简单记录C语言字符串的操作函数,难点在于字符串结束符处理和宽字符串的处理C++也使用char, wchar_t表示字符型和宽字符...
  • C语言中的字符串实际上就是char类型的一维数组。按照约定,C的字符串是以字符串结束标志/ 0 (或null)结尾的。null字符就是所有位均为 0 的字符。因此,它的十进制值是 0 。由于字符串的处理具有它自己的方式,因此...
  • C语言中的字符串处理函数

    千次阅读 2019-04-02 17:15:38
    1、strcpy():复制字符串 2、strncpy():复制n个字符串 3、strcat():连接字符串 4、strncat():连接n个字符串 5、strcmp():字符串比大小 6、strlen():字符串长度 7、strset():字符串重置 9、memset():...
  • 之前有一篇文章是学习了字符和字符串的,可以与之结合学习:【C语言进阶深度学习记录】十二 C语言中的:字符和字符串 文章目录1 字符串的概念1.1 字符串与字符数组1.2 字符数组与字符串代码分析2 字符串字面量2.1 ...
  • C语言中没有字符串类型变量,想要在C语言中要使用字符串可以用一下几种方式:1、字符数组;2、用指针指向字符串;1、字符数组: a ) char str1[] = "abc"; b ) char str2[] = {'g', 'h', 'i'}; a ) 方式会在字符...
  • c语言中的字符串拼接

    千次阅读 2019-04-27 23:51:05
    先判断两个字符串的末尾,然后将两个字符串拼接到一起,并将字符串最末尾设置为0。 3 为什么要将位置0和位置2都置为0? protocols[0] = ‘\0’; protocols[2] = ‘\0’; 将位置0置为0表示这是一个空字符串。 ...
  • ○ 在声明数组时要显式声明数组大小,为字符串的输入分配内存空间 ○ char name[81]; b. 动态内存分配 ○ 通俗一点就是向计算机要内存空间,是在程序运行时,再向计算机要内存 ○ 一般是用malloc...
  • 一个字符串的长度指的是从起始位置到结束符的字符个数(不包含结束符本身)。 注:strlen函数与sizeof是有区别的,strlen只是计算字符串的长度,不会将“\0”考虑进去,但是sizeof则会考虑,因为sizeof()是一种...
  • 一. strcpy(char* arr1 , const char* arr2)...该函数的作用是将数组arr1中的内容和数组arr2中的内容进行连接具体代码如下: 将数组arr2的内容放到arr1中之后的结果为: 三. strcmp(const char* arr1 , const char* arr
  • C语言中的字符串连接

    2010-04-12 23:25:00
    C语言中,字符串的链接可用strcat函数来实现:原型:extern char *strcat(char *dest,char *src);... 说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串。 返回指向dest的指
  • C语言中字符串常量是指用一对双撇号括起来的字符序列。如 “Hello World” , “CHINA" , "a" C规定: 在每一个字符串的结尾加一个”字符串结束标志“,以便系统据此判断字符串是否结束。 C规定:以字符...
  • C语言中的字符串处理

    千次阅读 2007-03-24 16:25:00
    C语言编译器在程序遇到长度为n的字符串字面量时,它会为字符串字面量分配长度为n+1的内存空间,在末尾增加一个额外的字符——空字符( )。字符串字面量的操作 通常情况下可以在任何C语言允许使用 char * 指针的...
  • 笔试题:C语言中的字符串问题

    千次阅读 2015-09-16 21:10:42
    但是笔试题中,经常考察指针在C语言字符串中的问题。 下面就我遇到的一些题,谈下我的理解,如有偏差请指正。 第一题: void f(char *p) { p=(char*)malloc(10); strcpy(p,"Hi"); } void main() { char *p=N
  • C语言中的字符串分割函数

    千次阅读 2012-06-01 18:36:55
    s为要分解的字符串,delim为分隔符字符串。 从s开头开始的一个个被分割的串。当没有被分割的串时则返回NULL。 #include #include int main() { char str[100] = "optr=555&abcd=666 rrr";
  • JNI中jstring类型与c语言中的字符串的转换 String与JString类型的相互转换,跨平台代码该函数与平台无关//将const char类型转换成jstring类型jstring stoJstring( JNIEnv* env, const char* pat ){ //定义java ...
  • C语言中的字符串结束符'\0'

    千次阅读 2019-04-14 16:43:08
    我写了一个函数,大致功能是将字符串A复制到字符串B中(此时B中为空),返回复制后NUL在B中的地址。 void main() { char dest[30] ; char src[10] = "abcdefghij"; char *a=dest,*b=src; while (*b != ...
  • c语言中常常需要把一数字字符转换成对应整数
  • 出于好奇测试了一下,声明时候: char ch[5]; scanf("%s",ch); printf("%s,%d",ch,sizeof...好像汉字啦,Ctrl+字符这一类奇奇怪怪好像也都可以输出诶,怎么做到? 好像getchar()也能正常识别汉字并储存样子……
  • 细谈C语言中的字符串

    千次阅读 2010-10-23 14:49:00
    对于初学者来说,C语言中对于字符串的操作稍显复杂,而且夹杂着指针的操作,这使得程序员稍微一不小心就会出现错误。C语言作为低级语言和高级语言的中间题,必然比不上java中的String来的舒服。但是,C语言的优秀...
  • C语言中的字符串中的分隔---split

    千次阅读 2014-01-03 21:55:21
    这个方法中运用到了strtok函数: ...s为要分解的字符串,delim为分隔符字符串。 例如:strtok("abc,def,ghi",","),最后可以分割成为abc def ghi.尤其在点分十进制的IP中提取应用较多。 使用中的注意: strtok
  • C语言中的字符串转换函数与方法

    千次阅读 2010-03-29 21:18:00
    C语言中,通常有2种方法进行字符串与数字的转换,一种是用pirntf系列函数来转换,另一种是调用C语言提供的字符串转换函数。 1. 用pirntf系列函数来转换(1) 字符串转成数字一例:#include #include #include #...
  • 转贴 c语言中的字符串操作

    千次阅读 2006-12-21 10:16:00
    转贴 字符串操作--c语言 本章集中讨论字符串操作,包括拷贝字符串,拷贝字符串的一部分,比较字符串字符串右对齐,删去字符串前后空格,转换字符串,等等。C语言提供了许多用来处理字符串的标准库函数,本章将...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,943
精华内容 8,377
关键字:

c语言中的字符串

c语言 订阅