C++ 学习笔记(牛客)

字符串大小写转换(1)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void mytolower(string& s){
    int len=s.size();
    for(int i=0;i<len;i++){
        if(s[i]>='A'&&s[i]<='Z'){
            s[i]+=32;//+32转换为⼩写
            //s[i]=s[i]-'A'+'a';
        }
    }
}
void mytoupper(string& s){
    int len=s.size();
    for(int i=0;i<len;i++){
        if(s[i]>='a'&&s[i]<='z'){
            s[i]-=32;//+32转换为⼩写
            //s[i]=s[i]-'a'+'A';
        }
    }
}

 字符串大小写转换(2)运行较慢

1
2
#include <ctype.h><br>a = toupper(a)
b = tolower(b)  //char a, b

 字符串大小写转换(3)运行较慢

1
2
string s = "ABCDEFG";
transform(s.begin(),s.end(),s.begin(),::tolower);

 

统计字符串中某个字符的个数

1
int size = count(a.begin(), a.end(), b); //string a, b;

 

判断一个字符是否为字母

1
2
3
#include <ctype.h>
 
int result = isalpha('');   //功能:如果参数是字母字符,函数返回非零值,否则返回零值。

 

char与string转换

C++中char类型可以自动转换成string类型,即你可以用char类型字符串直接给string类型变量赋值。但反过来是不行的,string类型不能隐式的将string类型转换成char类型,想要转换,必须显式调用c_str()函数。

1
2
3
4
5
6
string s1;
const char *pc = "a character array";
s1 = pc; // ok
 
char *str = s1; // 编译时刻类型错误
const char *str = s1.c_str(); // ok

 

char转int

1
2
3
char a='2'
int b = a - '0'
cout<<a-1<<' '<<b;   //输出 49  2  //‘2’的ASCII为50

 

string中的insert()函数用法

1
2
3
4
5
6
7
8
9
string str="hello";
string s="Hahah";
str.insert(1,s);//在原串下标为1的字符e前插入字符串s
cout<<str<<endl;
 
string str1="hello";
char c='w';
str1.insert(4,5,c);//在原串下标为4的字符o前插入5个字符c
cout<<str1<<endl;

 

四舍五入思路:加0.5取整

 

数组初始化为0

1
int a[100] = {0};//a[0] = 0,其余元素默认用0填充

 

十进制转二进制

#include <bitset>

std::bitset<N> bitset2(value); // 使用二进制整数 value 初始化一个长度为 N 的 bitset

下面是 std::bitset 类型的一些常用操作:

  • size() 返回 std::bitset 的长度
  • count() 返回 std::bitset 中值为 1 的位的数量
  • any() 返回 std::bitset 中是否存在值为 1 的位
  • none() 返回 std::bitset 中是否所有位都是 0
  • all() 返回 std::bitset 中是否所有位都是 1
  • test(pos) 返回 std::bitset 中位于 pos 位置的值
  • set(pos) 将 std::bitset 中位于 pos 位置的值设为 1
  • reset(pos) 将 std::bitset 中位于 pos 位置的值设为 0
  • flip(pos) 将 std::bitset 中位于 pos 位置的值取反
  • to_ulong() 返回 std::bitset 转换成的无符号整数值
  • to_ullong() 返回 std::bitset 转换成的无符号长整数值

 

作者:HaijianYang
欢迎任何形式的转载,但请务必注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。

posted @   HaijianYang  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示