C基礎--字串操作函數(strlen,strcpy,strcmp,strcat,strstr,strtok)

來源:互聯網
上載者:User

標籤:

#include <stdio.h>#include <string.h>int main(void){    //char dest[10];    //#define NULL (void *)0    //char *dest = NULL;            //dest是野指標,指向的地區沒有可讀寫空間    //char dest[3];        //char src[] = "hello";    char str1[10] = "hello";    //char str2[10] = str1;    strcpy(str2, str1);    printf("%s\n", str2);    //printf("%s\n", strcpy(dest, src));    //printf("%s\n", strncpy(dest, src, sizeof(dest)));    return 0;}
#include <stdio.h>#include <string.h>hellohelloworldstrncmp("hello", "helloworld", 5);int main(void){    int i;    char name[][10] = {"xiaoming", "itcast", "xiaoqiang", "xiaohong"};    char key[10];    /*    char a[10] = "xiaoming";    //name[0]  == > a    char b[10] = "itcast";    char c[10] = "xiaoqiang";    char d[10] = "xiaohong";    */    //char name[][10] = {"xiaoming\0\0itcast\0\0\0\0xiaoqiang\0xiaohong\0\0"};    for (i = 0; i < 4; i++)     {        if (strcmp(name[i], "xiaohong") == 0) {            printf("%d\t%s\n", i, name[i]);            strcpy(key, name[i]);        }    }    printf("%s\n", key);        return 0;}
#include <stdio.h>#include <string.h>int main(void){    //char s1[10] = "hello";        //char *s1 = "hello";        char s1[7] = "hello";   //注意S1要有足夠的空間放拼接後的字串,不然發生數組越界     char s2[] = "BOY";    strcat(s1, s2);    printf("%s\n", s1);        return 0;}
#include <stdio.h>#include <string.h>int main(int argc, char *argv[]){    char str[] = "hello world itcast";    char key;    printf("%s\n", str);    key = getchar();    char *p = NULL;    p = strchr(str, key);    (!p)?printf("un find\n"):printf("%s\n", p);    return 0;}

 

#include <stdio.h>#include <string.h>/*int main(void){    char str[] = "hello world itcast good";    char *p;    p = strtok(str, " ");    printf("%s\n", p);    while ((p = strtok(NULL, " ")) != NULL)        printf("%s\n", p);//    p = strtok(str, " ");    //printf("str = %s\n", str);    return 0;}*//*int main(void){    char str[] = "hello, world, itcast! good.; night?";    char *dlim = " ,?!.;";    //char dlim[] = ".?!.;";    char *p;    p = strtok(str, dlim);    printf("%s\n", p);    while ((p = strtok(NULL, dlim)) != NULL)        printf("%s\n", p);//    p = strtok(str, " ");    //printf("str = %s\n", str);    return 0;}*/size_t strlen(const char *str){    return 6;}int main(void){    char str[] = "hello world itcast good night";    char tmp[] = "I am a student\n";    char *dlim = " ";    char *p;    printf("%d\n", (int)strlen(tmp));    p = strtok(str, dlim);  //內部指標儲存下一次要strtok的字串地址    printf("%s\n", p);    p = strtok(tmp, dlim);    printf("%s\n", p);    while ((p = strtok(NULL, dlim)) != NULL)        printf("%s\n", p);    return 0;}

 

#include <stdio.h>int a = 3;int b;int main(void){    int c = 3;    char *str1 = "hello";     //"hello"屬於字串常量,儲存在唯讀資料區    char str2[]  = "hello";  //str2[6] 記憶體的棧上分配,棧的屬性可讀可寫    printf("%p\n", &a);    printf("%p\n", &b);    printf("%p\n", &c);    printf("%p\n", str1);    printf("%p\n", &str1);    printf("%p\n", str2);  //str2+1    printf("%p\n", &str2);// &str2+1    return 0;}

 

C基礎--字串操作函數(strlen,strcpy,strcmp,strcat,strstr,strtok)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.