zoukankan      html  css  js  c++  java
  • C/C++字符串笔试知识点及实例

    一、C字符串与C++字符串的深入理解

    对于C语言,需要区分C字符串C字符数组。 
    C字符串:以字符NULL(‘’)结尾的字符数组; 
    C字符数组:数组元素类型为字符类型。

    C字符串的的初始化:char str[] = "hello";
    C字符串的相关操作,利用“string”中定义的字符串处理函数。 
    比如,strcpy(str,"world");//字符串的赋值等。

    对于C++字符串,需要注意的是字符串封装成了一种数据类型string,可以直接声明变量并进行赋值等字符串操作。

    C字符串和C++字符串的简单对比

    TIP C C++
    头文件名 include< string> include< string >
    头文件目的 使用字符串处理函数 使用string类
    如何声明与初始化 char str[20] = “helllo”; string str = “helllo”;
    声明长度和使用NULL字符
    实现字符串的赋值 strcpy(str,”world”); str = “world”;

    C字符串的输入操作 

    字体修改方法 

    1、使用输入操作符cin来填充字符串变量,char str[20];cin>>str; 
    注意:以这种方式来读取字符串时,会忽略最初的空白字符(空格、制表符和换行符),而且输入会在下一个空格或换行符处停止;

    2、使用预定义函数getline获取整行输入(包括空格)。char str[20]; getline(str,20);遇到行结束的时候输入才会停止; 
    注意:getline 函数有两个参数,第一个参数用于接收输入的C字符串变量;第二个参数用于规定getline最多能接收的字符个数。

    C++string类的输入操作 
    1、使用输入操作符cin, string str; cin>>str; 
    2、使用getline函数, string str; getline(cin,str); 
    3、返回字符串的长度,str.length(str);

    C字符串和C++string对象之间的转换 
    1、C字符串存储到string类型的变量中,例如:

    char str[] = "hello";
    string mystr;
    mystr = str;
    •  

    2、C++string对象不能自动的转换为C字符串,需要进行显示的类型转换,需要用到string类的成员函数c_str() , strcpy ( a, b.c_str() );

    字符串到数字的转换 
    atoi函数获取一个C字符串参数,返回对应的int值。如果参数不与一个int值对应,atoi就会返回0。atoi函数在文件为cstdlib的库中。

    atoi ( "1234" );//返回整数1234
    atoi ( "#123" );//返回0
    •  
    /* 判断字符串是否为回文字符串*/
    
    #include <iostream> 
    #include <cstring>
    
    
    using namespace std;
    
    bool Palindrome (char* str, int len) {
        if (str == NULL) {
            return false;
        }
        bool m = true;
        for (int i = 0,j = len-1; i < len; i++,j--) {
            if (str[i] != str[j]) {
                m = false;
            }
        }
        return m;
    }
    
    int main (void) {
        char mystr[100];
        cin>>mystr;
        cout<<Palindrome( mystr, strlen(mystr) )<<endl;
        return 0;
    }
    •  

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wangjun_huster/article/details/66476757

  • 相关阅读:
    6.4 记录
    Python向mysql数据库插入数据
    6.2号课下作业测试标准的好坏
    模糊查询
    日常开发问题解决
    日常开发问题解决
    tomcat容器启动失败疑难问题解决方案
    5.14 记录
    5.13 记录
    关于HTTP,TCP,IP的一些基础知识
  • 原文地址:https://www.cnblogs.com/lightmare/p/10398834.html
Copyright © 2011-2022 走看看