关于C++初学者编写程序发现的小方法
关于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即可打开
- 点赞
- 收藏
- 关注作者
评论(0)