关于C++初学者编写程序发现的小方法

举报
开心星人 发表于 2022/10/14 11:19:01 2022/10/14
【摘要】 关于C++初学者编写程序发现的小方法 1、读取带有空格的字符串getline(cin,string)可以读取一行以回车结束而cin>>string; 读取至空格或者回车都会结束cout << "请输入一个带有空格的字符串:";string str;getline(cin, str);cout << str << endl; 2、交换两个数的方法除过常用的使用第三个变量外,在不引入第三个变...

关于C++初学者编写程序发现的小方法

1、读取带有空格的字符串

getline(cin,string)可以读取一行以回车结束
而cin>>string; 读取至空格或者回车都会结束

cout << "请输入一个带有空格的字符串:";
string str;
getline(cin, str);
cout << str << endl;

2、交换两个数的方法

除过常用的使用第三个变量外,在不引入第三个变量的情况下交换两个数
(1)

a=a+b;
b=a-b;
a=a-b;

(2)

a=a*b;
b=a/b;
a=a/b;

(3)

a=a^b;
b=a^b;
a=a^b;

(4)

swap(a,b);

前两种方法可能会造成溢出,而亦或的方法只能用整数。
swap函数很强大!!

3、简单的介绍异或

下面简单介绍一下异或
亦或:按位异或(二进制)
运算法则:若参与运算的两个操作数的对应位相同,则该位结果为0,否则为1

下面看几个简答的例子,可以更好的理解亦或
如:3^5
3 : 00000011
5 : 00000101
3 ^ 5 : 00000110

如 1^ 1=0 0^ 0=0 1^ 0=1 0^1=1

4、有关对数的操作

c++中不可以直接使用对数函数,需要引入头文件:cmath,使用C++语言中的数学函数log()函数来表示。
然后使用函数exp(x)即可,x就是次方数,这个函数结果相当于e^x
其中exp(1)=2.71828
所以用log(x)/log(exp(1))就可以表示自然对数了。

5、将小写字母变成大写字母

直接上代码

 	string a="nihao";
    for(int i=0;i<5;i++)
    {
        a[i]=toupper(a[i]);
    }
    cout<<a<<endl;

在这里有关一个string的点,string就是字符数组,可以直接当作字符数组的方法来使用
而当使用substr成员函数来提取string中的某一个字符的时候,
比如想将该提取出来的字符转换成对应的ASCII码就好像无法进行

除此之外还有字符函数
如 isdigit 判断是否为数字
islower 判断是否为小写字母
issupper 判断是否为大写字母
isalpha 判断是否为字母
等等
在使用这些函数的时候记得加上头文件 cctype

6、将字符串类型转换为整型

使用stoi函数即可 (string to int)
代码如下

string str="12345";
int temp=stoi(str);

7、电视上黑客敲键盘的地方

我也是最近才知道,哈
是在运行窗口进行的(WIndows+R)键,输入cmd即可打开

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。