字符串函数处理例子

1. extern void *memcpy(void *dest, void *src, unsigned int count);

用法:#include <string.h>

功能:由src所指内存区域复制count个字节到dest所指内存区域。

说明:src和dest所指内存区域不能重叠,函数返回指向dest的指针。

举例:

// memcpy.c
#include <syslib.h>
#include <string.h>

main()
{
char *s="Golden Global View";
char d[20];

clrscr();

memcpy(d,s,strlen(s));
d[strlen(s)]=0;
printf("%s",d);

getchar();
return 0;
} 


2. void *memset(void *s,int c,size_t n)
总的作用:将已开辟内存空间 s 的首 n 个字节的值设为值 c。

例子
#include
void main(){
char *s="Golden Global View";

clrscr();

memset(s,'G',6);
printf("%s",s);

getchar();
return 0;
} 

memset() 函数常用于内存空间初始化。如:
char str[100];
memset(str,0,100);


3. string 转换为char*
string 是c++标准库里面其中一个,封装了对字符串的操作 
把string转换为char* 有3中方法: 
1。data 
如: 
string str="abc"; 
char *p=str.data(); 
2.c_str 
如:string str="gdfd"; 
    char *p=str.c_str(); 
3 copy 
比如 
string str="hello"; 
char p[40]; 
str.copy(p,5,0); //这里5,代表复制几个字符,0代表复制的位置
*(p+5)='\0'; //要手动加上结束符
cout < <p;


3. sprintf
ssize_t  size=0;
char buffer[1024]
size=read(100,buffer,1024)
sprintf(buffer,"%d bytes altogether\n",size)

猜你喜欢

转载自ssh-2009-126-com.iteye.com/blog/1716490
今日推荐