标签:字符串 判断 strlen strncmp 处理 main 指定 nbsp 数字
我们平常电脑上,最多的就是图片和字符串以及音频和视频文件。
所以,如何处理这4种类型的数据,是我们学习很重要的目的。
字符串<图片<音频<视频
char l_v1[100]= "你1好2吃饭了吗abc"; strlen函数可以计算出在内存里面占了多少个字节。
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[5] = { 0 };
/
fgets(l_v1,sizeof(l_v1),stdin);
printf("%d",sizeof(l_v1 ));//l_v1长度
printf("%d",strlen(l_v1));//输入实际长度
//string length的缩写;
system("pause");
}
#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",取字符串长度(l_v1));
//string length的缩写;
system("pause");
}
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int 求汉字长度(char *p_字符串长度) {
int 计算长度 = 0;
for (size_t i = 0; i < strlen(p_字符串长度); i++) {
if (p_字符串长度[i] < 0) {
计算长度 += 1;
}
}
计算长度 /= 2;
return 计算长度;
}
void main() {
char l_v1[100] = "1234你好吗asd";//先判断内存字符串数字规律(ascll ,gbk, db1231,编码大小求)
printf("%d\n", 求汉字长度(l_v1));
system("pause");
}
strcat(l_v1,l_v2);
把l_v1和l_v2合并,结果放到l_v1
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[ 50 ] = "你好";
char l_v2[50] = "吃饭了吗";
strcat(l_v1, l_v2);//等于strncat(l_v1, l_v2,strlen(l_v2))
printf("%s\n", l_v1);
system("pause");
}//把l_v2放到l_v1要注意l_v1在栈空间
strncat(l_v1,l_v2,5);
把l_v1和指定的l_v2的文本截取合并,结果放到l_v1
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[ 50 ] = "你好";
char l_v2[50] = "吃饭了吗";
strcat(l_v1, l_v2,2);//把l_v2头两个字节放到来l_v1里
printf("%s\n", l_v1);
system("pause");
}//把l_v2放到l_v1要注意l_v1在栈空间
注意事项:缓存区长度.
strncmp(l_v1,l_v2,5)把l_v1字符串和l_v2字符串的前5个字节进行比较.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[] = "你好";
char l_v2[] = "你好";
int result=strcpm(l_v1, l_v2);
if (result == 0) {
printf("相同\n");
}
else {
printf("不同\n");
}
system("pause");
}
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[ 50 ] = "你好";
char l_v2[50] = "吃饭了吗";
strncmp(l_v1, l_v2, 2);//把L_v2里面前两个字节与l_v1比较,大小是否相同
printf("%d\n", strncmp(l_v1, l_v2, 2));
system("pause")
strcpy(l_v1,l_v2)
把l_v2字符串复制一份到l_v1中.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[50] = "你好";
char l_v2[50] = "吃饭了吗123";
strcpy(l_v1, l_v2);
printf("%s\n", l_v1);
system("pause");
}//把l_v2复制到l_v1要注意l_v1在栈空间
strncpy(l_v1,l_v2,5) 把l_v2字符串前5个字节复制一份到l_v1中.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[50] = "你好";
char l_v2[50] = "吃饭了吗123";
strcpy(l_v1, l_v2,2);//把l_v2前两个字节复制到l_v1
printf("%s\n", l_v1);
system("pause");
}//把l_v2复制到l_v1要注意l_v1在栈空间
sprintf和printf的区别.
sprintf和printf类型,唯一的区别是增加了一个参数,第一个参数是一个char数组
一个把结果显示到屏幕上,一个把结果输入到另一个字符串数组中.
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main() {
char l_v1[50] = "你好";
char l_v2[50] = { 0 };
printf("%s\n", l_v1);
sprintf(l_v2, "%d+%d=%d", 1,2 ,1+2);
printf("%s\n", l_v2);
system("pause");
}
标签:字符串 判断 strlen strncmp 处理 main 指定 nbsp 数字
原文地址:http://www.cnblogs.com/xiaodaxiaonao/p/7818643.html