C语言 字符串函数
本文发布于 767 天前。

部分内容复制自菜鸟教程

字节类型判断

#include <ctype.h>
// 以下函数均为判断字节
int function(int c);
  • isblank()
  • isdigit()
  • isalpha()
  • isxdigit()
  • islower()
  • isupper()
  • tolower()
  • toupper()
  • isspace()
  • iscntrl()
  • ispunct()
  • isprint()
  • isgraph()
    注意,以上函数返回true or false,true可能为任意一个非0正数,而不是永远是1.

转换字符串<->数

#include <stdlib.h>
#include <stdio.h>

// string to integer
char str[10] = "122";
int x = atoi(str);

// string to double
char str[30] = "20.30 aaa";
char *prt;
ret = strtod(str, &ptr);
// ret=20.30000, ptr=" aaa"

// string to float
char str[10] = "122";
float x = atof(str);

// string to long
char str[10] = "122";
long x = atol(str);

标准输入输出

#include <stdlib.h>
#include <stdio.h>

// 返回第一个字符
char a;
a = getchar();
printf("%c\n", a);

// 安全的输入
fgets(str, 7, stdin);  /*从输入流stdin即输入缓冲区中读取7个字符到字符数组str中*/

// 打印字符串
puts("Hello world");
//printf也可以

// 把内容存进字符串中
char a[20];
sprintf(a, "Hello world %d\n", 5);
printf("%s\n", a);
// Hello world 5

// 从字符串中提取内容并存入字符串
char dtm[100] = "Friday October 29 2021";
sscanf(dtm, "%s %s %d %d", weekday, month, &day, &year);


// 显示一个字符
putchar('a');


复制字符串

char src[]="aaabbb";
char dest[15];

strcpy(dest, src);
// dest="aaa"

strncpy(dest, src, 4);
// dest="aaab"

连接字符串

char str1[100]="AAA", str2[100]="BBB";
strcat(str1, str2);
// str1="AAABBB"
strncat(str1, str2, 2);
// str1="AAABB"

字符串比较

char str1[100]="AAA", str2[100]="AAB";
int res = strcmp(str1, str2);
// res != 0
int res = strncmp(str1, str2, 2);
// res == 0

字符串中搜索字符

第一次出现

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

int main ()
{
   const char str[] = "http://www.runoob.com";
   const char ch = '.';
   char *ret;
   ret = strchr(str, ch);
   printf("|%c| 之后的字符串是 - |%s|\n", ch, ret);
   return(0);
}
// |.| 之后的字符串是 - |.runoob.com|

最后一次出现

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

int main ()
{
   int len;
   const char str[] = "https://www.runoob.com";
   const char ch = '.';
   char *ret;
   ret = strrchr(str, ch);
   printf("|%c| 之后的字符串是 - |%s|\n", ch, ret);
   return(0);
}
// |.| 之后的字符串是 - |.com|

检索字符串 str1 中第一个不在字符串 str2 中出现的字符下标。

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

int main ()
{
   int len;
   const char str1[] = "ABCDEFG019874";
   const char str2[] = "ABCD";

   len = strspn(str1, str2);

   printf("初始段匹配长度 %d\n", len );
   return(0);
}
标题:C语言 字符串函数
作者:IKK
除转载和特殊声明外,所有文章采用 CC BY-NC-SA 4.0协议
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇