C语言学习记录(十一)
  zKfdye51x3nh 2023年11月18日 52 0

gets 函数与 puts 函数

gets 函数类似于 scanf 函数,用于读取标准输入。scanf 函数在读取字符串时遇到空格就认为读取结束。 gets 函数的格式如下:

char *gets(char *str);

gets 函数从 STDIN(标准输入)读取字符并把它们加载到 str(字符串)中,直到遇到换行符(\n)。 gets 遇到\n 后,不会存储\n,而是将其翻译为空字符'\0'。 puts 函数类似于 printf 函数,用于输出标准输出。puts 函数的格式如下:

int puts(char *str);

函数 puts 把 str(字符串)写入 STDOU(标准输出)。puts 会将数组中存储的字符串打印到屏幕上,同时打印换行,相对于 printf 函数,puts 只能用于输出字符串,同时多打印一个换行符,等价于 printf(“%s\n”,c)

#include <stdio.h>
#include <string.h>

void gets_puts();

int main()
{
    gets_puts();

    return 0;
}

void gets_puts()
{
    char a[20];
    // gets读取字符并把它们加载到 str(字符串)中,直到遇到换行符(\n)结束
    // gets 遇到\n 后,不会存储\n,而是将其翻译为空字符'\0'
    gets(a);
    // puts 把 str(字符串)写入 STDOU(标准输出)。
    // puts 只能用于输出字符串,同时多打印一个换行符,等价于 printf(“%s\n”,c)
    puts(a);
}

str 系列字符串操作函数

str 系列字符串操作函数主要包括 strlen、strcpy、strcmp、strcat 等。strlen 函数用于统计字符串长度,strcpy 函数用于将某个字符串复制到字符数组中,strcmp 函数用于比较两个字符串的大小,strcat 函数用于将两个字符串连接到一起。各个函数的具体格式如下所示:

#include <string.h>
size_t strlen(char *str);
char *strcpy(char *to, const char *from);
int strcmp(const char *str1, const char *str2);
char *strcat(char *str1, const char *str2);

对于传参类型 char*,直接放入字符数组的数组名即可。

#include <stdio.h>
#include <string.h>

int mystrlen(char a[]);
void strlearn();

int main()
{
    strlearn();

    return 0;
}

// strlen 函数用于统计字符串长度
// strcpy 函数用于将某个字符串复制到字符数组中
// strcmp 函数用于比较两个字符串的大小,逐个字符比较
// strcat 函数用于将两个字符串连接到一起
void strlearn()
{
    int len;
    char c[20];
    char d[100] = "world";
    gets(c);
    puts(c);
    len = strlen(c); // 统计字符串的长度
    printf("strlen=%d\n", len);
    len = mystrlen(c);
    printf("mystrlen=%d\n", len);
    strcat(c, d); // 把d中的字符串拼接到c中
    puts(c);
    puts(d);
    strcpy(d, c); // 把c中的字符串复制到d中
    puts(c);
    puts(d);
    // c大于d,返回值是正值,相等是0,c小于d,返回负值
    printf("c?d%d\n", strcmp(c, d));
}

int mystrlen(char a[])
{
    int i = 0;
    while (a[i++])
        ;
    return i - 1;
}

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月18日 0

暂无评论

推荐阅读
  TKwJ4YzyA8uz   2024年05月17日   51   0   0 C语言
  6Df3JnWQUC5m   2024年04月24日   60   0   0 C语言
  fHBiUfJyY67V   2024年04月26日   47   0   0 C语言
  V88gxnVgnp1F   2024年05月08日   92   0   0 C语言
  6Df3JnWQUC5m   2024年05月08日   90   0   0 C语言
  o1ZcTI9mJsxK   2024年05月08日   121   0   0 C语言
  H5oyQecqjP4R   2024年04月26日   43   0   0 C语言
  6Df3JnWQUC5m   2024年04月25日   53   0   0 C语言
  nmX9dIiR6BtA   2024年04月28日   51   0   0 C语言
  6Df3JnWQUC5m   2024年05月17日   62   0   0 C语言
  6Df3JnWQUC5m   2024年04月25日   52   0   0 C语言
zKfdye51x3nh