C++学习之数组、指针、字符串
- 声明一个参数为整型,返回值为长整型的函数指针;声明类A的一个成员函数指针,其参数为整型,返回值长整型。
#include <iostream>
#include <string>
using namespace std;
long ItL(int i) {
long a=5;
return a;
}
class A {
public:
long itl2(int i) {
long a = 8;
return a;
}
};
int main() {
int a = 1;
long (*p)(int);
p = ItL;
cout << p(a)<<endl;
long (A::*p2)(int);
p2 = &A::itl2;
A q;
cout << (q.*p2)(a) << endl;
return 0;
}
- 实现一个名为SimpleCircle的简单圆类,其数据成员int *itsRadius为一个指向其半径值的指针,设计对数据成员的各种操作,给出这个类的完整实现并测试这个类。
#include <iostream>
#include <string>
using namespace std;
class SimpleCircle {
public:
SimpleCircle();
SimpleCircle(int r);
~SimpleCircle() {}
int* itsRadius=&Radius;
int getR() { return Radius; }
private:
int Radius;
};
SimpleCircle::SimpleCircle() {
Radius = 5;
}
SimpleCircle::SimpleCircle(int r) {
Radius = r;
}
int main() {
SimpleCircle c;
cout << *(c.SimpleCircle::itsRadius) << endl;
cout << *(c.itsRadius) << endl;//一个意思
return 0;
}
- 编写一个函数,统计一个英文句子中字母的个数,在主程序中实现输入、输出。
#include <iostream>
#include <string>
using namespace std;
int main() {
string s;
getline(cin,s);
int count = 0;
for (int i = 0; i < s.length(); i++) {
if (s[i] >= 'a' && s[i] <= 'z' || s[i] >= 'A' && s[i] <= 'Z')
count++;
}
cout << count << endl;
return 0;
}
- 编写函数reverse(char *s)的倒序递归程序,使字符串s倒序。