• 1.编一程序,将字符串“Hello,C++!”赋给一个字符数组,
    然后从第一个字母开始间隔地输出该串(请用指针完成)。
  • 代码如下
#include<iostream>
#include<string>
using namespace std;
int main() {
const char str[] = "Hello,C++!";
const char *p = str;
while ((*p) != '\0')
cout << *p++ << " ";
cout << endl;
return 0;
}
  • 测试截图

  • 2.编写一个函数,用于去掉字符串尾部的空格符。
    函数原型为:char *mytrim(char *string);
    其中参数string为字符串,返回值为指向string的指针。

  • 代码如下:
#include<iostream>
#include<string>
#include<cstdio>
using namespace std;
char *mytrim(char *string) {
char *p = string;
int c1 = 0, c2 = 0;
while ((*p++) != '\0')
c1++;
cout << "The original length of the string is:" << c1 << endl;
for (int i = c1 - 1; string[i] == ' '; i--) //Reverse Search for spaces
c2++;
*(string + (c1- c2)) = '\0';
cout << "The string is now long:" << c2 << endl;
return string;
}
int main() {
char str[] = "Hello,C++! ";
cout << "The original string is:";
printf("%s\n",str);
cout << mytrim(str) << endl;
return 0;
}
  • 测试截图
  • 3.编写一个函数,用于去掉字符串前面的空格。
    函数原型为:char *myltrim(char *string);
    其中参数string为字符串,返回值为指向string的指针。
  • 代码如下
#include<iostream>
#include<string>
#include<cstdio>
using namespace std;
char *mytrim(char *string) {
char *p = string;
int c1 = 0, c2 = 0;
while ((*p++) != '\0')
c1++;
cout << "The original length of the string is:" << c1 << endl;
for (int i = 0; string[i] == ' '; i++) //Find spaces from Start
c2++;
for (int i = 0; i < c2; i++)
string[i] = string[i + c2];
*(string + (c1 - c2)) = '\0';
cout << "The string is now long:" << c2 << endl;
return string;
}
int main() {
char str[] = " Hello,C++!";
cout << "The original string is:";
printf("%s\n", str);
cout << mytrim(str) << endl;
return 0;
}
  • 测试截图

C++指针数组,二级指针和函数指针的练习的更多相关文章

  1. c语言指针数组和结构体的指针

    指向数组的指针,先初始化一个数组,使用传统方式遍历 void main() { ] = { ,,,, }; ; i < ; i++) { printf("%d,%x\n", ...

  2. c语言.函数指针数组

    函数指针: 一个指向函数的指针.一般用函数名表示. 函数指针数组:元素为函数指针的数组.转移表.c语言中函数不可以定义为数组,只能通过定义函数指针来操作. #include<stdio.h> ...

  3. 转:函数指针数组的妙用(I)

    转自:http://blog.sina.com.cn/s/blog_4c78b35f010008hi.html 笔者在开发某软件过程中遇到这样一个问题,前级模块传给我二进制数据,输入参数为 char* ...

  4. C语言函数指针变量和指针函数以及指针数组

    C语言中,一个函数总是占用一段连续的内存区,而函数名就是该函数所占内存区的首地址.我们可以把函数的这个首地址(或称入口地址)赋予一个指针变量,使该指针变量指向该函数.然后通过指针变量就可以找到并调用这 ...

  5. C语言基础知识点整理(函数/变量/常量/指针/数组/结构体)

    函数 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ...

  6. [C++]数组指针,数组引用,函数指针

    数组指针是指一个指向数组的指针,例如有一个数组指针p指向一个数组a[],则 *p是取到这个数组,也就是说 *p=a,因此 **p =a[0], 它的定义为: ]; ]=&a; (*c)表示它是 ...

  7. [C++ Primer Plus] 第7章、函数(一)程序清单——递归,指针和const,指针数组和数组指针,函数和二维数组

    程序清单7.6 #include<iostream> using namespace std; ; int sum_arr(int arr[], int n);//函数声明 void ma ...

  8. 指针数组,数组指针,函数指针,main函数实质,二重指针,函数指针作为參数,泛型函数

     1.指针数组 数组里面的每一个元素都是指针. 指针数组的案比例如以下: 易犯错误: 2.数组指针 归根结底还是指针,仅仅是取*的时候可以取出一整个数组出来. 数组指针:(一个指针指向了数组.一般 ...

  9. C++中的指针、数组指针与指针数组、函数指针与指针函数

    C++中的指针.数组指针与指针数组.函数指针与指针函数 本文从刚開始学习的人的角度,深入浅出地具体解释什么是指针.怎样使用指针.怎样定义指针.怎样定义数组指针和函数指针.并给出相应的实例演示.接着,差 ...

  10. 【嵌入式开发】C语言 命令行参数 函数指针 gdb调试

    . 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21551397 | http://www.hanshul ...

随机推荐

  1. DataRow获取数值类型为空或NULL时异常处理

    //获取数据集内容 DataSet ContractDS = dal.GetJHFKStr(jhfubh); //验证数据集是否为空 if (!DataSetUtil.IsNullOrEmpty(Co ...

  2. Java - > for, while 及 do.while循环

    为什么要用到循环结构: 按顺序结构执行程序语句(方法或者代码块)只能被执行一次.如果要多次执行,就需要使用到循环结构(循环结构是指在程序中需要反复执行某个功能而设置的一种程序结构) 布尔表达式:是一段 ...

  3. jqueryUI学习

    01.选项卡 拖动按钮<div id="tabs"> <ul> <li><a href="#tabs-1">第一 ...

  4. js如何设置一个倒计时

    //申明一个定时器 let endInterval; //结束时间(毫秒数,这里是距离 1970 年 1 月 1 日至今的毫秒数) let endSeconds; //结束时间差 const ENDT ...

  5. css浮动布局小技巧

    父元素如何围住浮动的子元素的三种办法: 一.为父元素应用overflow:hidden. overflow真正用途是防止包含元素被大的内容撑开,设定了宽度之后,包含元素将超过容器的内容减掉:而它还有另 ...

  6. 使用Android Studio搭建Android开发环境

    一.Android Studio简单介绍 2013年GoogleI/O大会首次发布了Android Studio IDE(Android平台集成开发环境).它基于Intellij IDEA开发环境,旨 ...

  7. JVM Guide

    Java Virtual Machine: the Essential Guide October 8th, 2014 - By Alexey Zhebel Introduction Java Vir ...

  8. 触摸事件MotionEvent

    触摸事件MotionEvent在用户交互中,占着非常重要的地位.首先,来看看MotionEvent中封装的一些常用的事件常量,它定义了触摸事件的不同类型. 1.单点触摸按下动作 public stat ...

  9. php执行与curl区别

            如执行一个文件写入 Linux服务器,分别php **/a.php与 curl http://**/a.php 结果:php执行写入到/root/test.txt, curl与浏览器运 ...

  10. Android应用开发基础之七:广播与服务(一)

    广播 广播的概念 现实:电台通过发送广播发布消息,买个收音机,就能收听 Android:系统在产生某个事件时发送广播,应用程序使用广播接收者接收这个广播,就知道系统产生了什么事件. Android系统 ...