几个对字符串进行操作的函数

1: char *strcpy(char *to, char *from);

该函数将串from复制到串to中,并且返回一个指向串to的开始处的指针。

例如:strcpy(s3,s1);   //s3=“dirtreeformat”

注意:char *s这样定义的字符串是常量,必须定义的时候就初始化,而char s[30]这样定义的字符串是变量,允许对他进行改变

#include <stdio.h>
#include <string.h>
int main()
{
    const char *s = "Golden Global View";
    char s1[30];
    strcpy(s1, s);
    printf("s1 = %s", s1);
    return 0;
}

2:

char  *strcat(char *to, char *from)

该函数将串from复制到串to的末尾,并且返回一个指向串to的开始处的指针。

例如:strcat(s3,”/”)

strcat(s3,s2);  //s3=“dirtreeformat/test.cpp”

 这个地方需要注意的就是如果是直接串联的话要注意第二个参数是一个字符串,比如strcat(s, " / ");不要忘记双引号

#include <stdio.h>
#include <string.h>
int main()
{
    char s[30] = "Golden Global View";
    strcat(s, " / ");
    char s1[30] = "I am happy!";
    strcat(s, s1);
    printf("s = %s", s);
    return 0;
}

3:将串s中的第pos个字符开始的连续的len个字符复制到串sub中

看了半天,发现一个问题,这样用的话字符串中不能有空格,不然有时候就会多输出一位字符

void substr(string sub, string s, int pos, int len)

{

if(pos<0 || pos>strlen(s)-1 || len<0)

  return ;

strncpy(sub,s+pos,len);

}

#include <stdio.h>
#include <string>
#include <string.h>
using namespace std;
void substr(char sub[], char s[], int pos, int len)
{
    if(pos < 0 || pos > int(strlen(s)-1) || len < 0)
        return;
    strncpy(sub, s+pos, len);
}
int main()
{
    char s[30] = "GoldenGlobalView";
    char s1[30];
    //strncpy(s1, s+7, 6);
    substr(s1, s, 7, 3);
    printf("%s\n", s1);
    return 0;
}
时间: 2024-10-26 10:46:36

几个对字符串进行操作的函数的相关文章

【2017-04-01】JS字符串的操作、时间日期的操作、函数、事件、动画基础

一.字符串的操作 1.转大写: s.toLowerCase(); 2.转大写: s.toUpperCase(); 3.字符串的截取: s.substr(3,4);      -从索引3开始截取,截取4位.索引从0开始. 4.将字符串按指定的字符拆开: s.split(",");             引号内放指定的字符.返回的是一个数组. 5.字符串长度: s.length; 6.字符串中一个字符的索引: s.indexOf("world");      worl

JavaScript字符串常用操作函数之学习笔记

字符串简介 使用英文单引号或双引号括起来,如:’Hello’,”World”,但是不能首尾的单引号和双引号必须一致,交错使用,如果要打印单引号或者双引号,可以使用转义字符\’(单引号),\”(双引号)  代码如下 复制代码 var str_1 = 'Hello World!';  //Hello World!var str_2 = "Hello World!";  //Hello World!var str_3 = '他说:"这样可以的."';  //他说:&quo

PHP常用字符串的操作函数

字符串转换类函数 addcslashes函数:以C语言风格使用反斜线转义字符串中的字符 addslashes函数:使用反斜线引用字符串 chop函数:清除字符串中的连续空格 get_html_translation_table函数:返回htmlspecialchars()函数和htmlentities()函数的转换表 chunk_split函数:将字符串分割成小块 hebrev函数:转换希伯来逻辑字符为可见字符 hebrevc函数:转换希伯来语文本为可见文本,包括换行符 html_entity_

C语言字符,字符串,字节操作常用函数

strlen 这个函数是在 string.h 的头文件中定义的 它的函数原型是 size_t strlen( const char ); size_t 是一个无符号整型,是这样定义的 typedef unsigned int size_t;  既然它返回的不是整型数,那么如果你想直接对他的表达式进行操作,那么肯定就会存在一些问题,如下: if( strlen(str1) - strlen(str2) >=0 ) 这个判断语句将永远都是真的,因为左侧的是无符号数,那个不可能比零小,所以这样做就和你

【微软100题】定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部。 如把字符串abcdef左旋转2位得到字符串cdefab。请实现字符串左旋转的函数。

package test; /** * 定义字符串的左旋转操作:把字符串前面的若干个字符移动到字符串的尾部. 如把字符串abcdef左旋转2位得到字符串cdefab. 请实现字符串左旋转的函数. * 要求时间对长度为n的字符串操作的复杂度为O(n),辅助内存为O(1). * * @author Zealot * */ public class MS_26 { private void rotateString(String s, int rotate) { System.out.println(

QList介绍(QList比QVector更快,这是由它们在内存中的存储方式决定的。QStringList是在QList的基础上针对字符串提供额外的函数。at()操作比操作符[]更快,因为它不需要深度复制)非常实用

FROM:http://apps.hi.baidu.com/share/detail/33517814 今天做项目时,需要用到QList来存储一组点.为此,我对QList类的说明进行了如下翻译. QList是一种表示链表的模板类.QList<T>是Qt的一种泛型容器类.它以链表方式存储一组值,并能对这组数据进行快速索引,还提供了快速插入和删除等操作.QList.QLinkedList和QVector提供的操作极其相似:* 对大多数操作来说,我们用QList就可以了.其API是基于索引(inde

go语音之进阶篇字符串操作常用函数介绍

下面这些函数来自于strings包,这里介绍一些我平常经常用到的函数,更详细的请参考官方的文档. 一.字符串操作常用函数介绍 1.Contains func Contains(s, substr string) bool 功能:字符串s中是否包含substr,返回bool值 示例: fmt.Println(strings.Contains("seafood", "foo")) fmt.Println(strings.Contains("seafood&qu

Shell脚本中替换字符串等操作

在做shell批处理程序时候,常常会涉及到字符串相关操作. 有非常多命令语句.如:awk,sed都能够做字符串各种操作. 事实上shell内置一系列操作符号.能够达到类似效果,大家知道,使用内部操作符会省略启动外部程序等时间,因此速度会非常的快. 一.推断读取字符串值 表达式 含义 ${var} 变量var的值, 与$var同样     ${var-DEFAULT} 假设var没有被声明, 那么就以$DEFAULT作为其值 * ${var:-DEFAULT} 假设var没有被声明, 或者其值为空

Android jni 编程1(对基本类型字符串的操作)

最近一直在学安卓的jni,主要参考的是黑马程序员的视频教程,讲的确实不错. 那就自己总结一下吧,算是对学习的复习. 这篇博客也主要参考了这位博主:http://www.cnblogs.com/activity-life/p/3643047.html,在这里谢谢了 通过他的博客和视频教程,我结合了两者的方法,把功能实现了,毕竟这个是应用为主,自己学艺不精,这里积累下: 第一篇博客的总结所有Java调取jni是关于字符串的操作,主要包括以下三种类型: //对基本数据类型字符串的访问 //0.无输入,