zoukankan      html  css  js  c++  java
  • 53 再谈字符串

    C语言中,gets() 和scanf()的区别在于输入的字符串是否中间有空格:对于前者,只有遇到" "时才停止输入,而对于后者,出现" "或空格都停止输入。

    fgets会认为用户输入的回车也是字符串的一部分,并且会检查是否缓存区溢出。
    所以最好使用fgets,因为比较安全,但为了保证安全,第二个参数必须正确写入。

     //scanf("%s", &l_str);
     gets_s(l_str);

     //fgets(l_str, sizeof(l_str), stdin);

    #include<stdio.h>
    #include<stdlib.h>
    void main() {
    char l_v1[5] = { 0 };
    //scanf("%s", &l_v1);
    gets_s(l_v1);
    printf("%s ", l_v1);
    system("pause");
    }
    //scanf超过[5], 就会堆栈溢出
    //scanf 当中间 有空格键( )不会 停止输入
    //字符串输入

    #include<stdio.h>
    #include<stdlib.h>
    void main() {
    char l_v1[5] = { 0 };
    //scanf("%s", &l_v1);
    //gets_s(l_v1_);
    fgets(l_v1,sizeof(l_v1),stdio);
    printf("%s", l_v1);
    system("pause");
    }
    //scanf gets_s超过[5], 就会堆栈溢出
    //scanf 当中间 有空格键( ) 停止输入,gets_遇到空格键( )不会停止输入
    //fgets 以上情况都不会出现
    //字符串输入


    puts会自动输出的时候加
    fputs是puts的文件操作版本。
    第一个参数是char 字符串 ,第二个参数如果是输出到屏幕上的花,可以写stdout.
    fputs(l_str,stdout)


    #include <string.h>
    strlen    求一个字符串的长度
    strcmp  比较

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    int 取字符串长度(char *p_字符串地址){
    int l_长度=0;
    while(*p_字符串地址!=0){
    l_长度=0;
    l_长度+=1;
    p_字符串地址++;}
    return l_长度;
    }
    void main() {
    char l_v1[5]={0};

    printf("%d",取字符串长度);
    //string length的缩写;
    system("pause");

    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    int 字符串比较(char *p_字符串地址1, char *p_字符串地址2) {
    int l_v1 = strlen(p_字符串地址1);
    int l_v2 = strlen(p_字符串地址2);
    if (l_v1 != l_v2) {
    return 1;
    }
    for (size_t i = 0; i < l_v1; i++){
    if (p_字符串地址1 != p_字符串地址1) {
    return 1;
    }
    }
    return 0;
    }

    void main() {
    char l_v1[] = "你好";
    char l_v2[] = "你好";
    int result=字符串比较(l_v1, l_v2);
    if (result == 0) {
    printf("相同 ");
    }
    else {
    printf("不同 ");
    }
    system("pause");
    }

     

  • 相关阅读:
    Problem 1014 xxx游戏 暴力+拓扑排序
    Codeforces Beta Round #10 D. LCIS
    HDU 1423 Greatest Common Increasing Subsequence LCIS
    Codeforces Round #349 (Div. 1) A. Reberland Linguistics dp
    BZOJ 3875: [Ahoi2014]骑士游戏 dp+spfa
    Codeforces Round #360 (Div. 2) E. The Values You Can Make 01背包
    Codeforces Round #360 (Div. 2) D. Remainders Game 中国剩余定理
    UVALive 4872 Underground Cables 最小生成树
    POJ 1182 食物链 并查集
    山东省第六届ACM省赛
  • 原文地址:https://www.cnblogs.com/xiaodaxiaonao/p/7803227.html
Copyright © 2011-2022 走看看