2 qq 33486292 qq_33486292 于 2016.03.18 18:39 提问

c++函数基础问题,求解!

c++,请教用void 定义的函数怎么输出结果,例如void str_cat(char*p1,char*p2);还有利用2个函数求结果,怎么输出结果,例如
上面的str_cat函数和int str_len(char*p1,char*p2)函数,得出拼接的字符串和其长度。涉及的什么知识,我到c++ primer plus上去学学!

5个回答

caozhy
caozhy   Ds   Rxr 2016.03.18 19:51
已采纳

其中用指针n传出参数
比如

 char s1[100]="hello ";
char s2[]="world";
int n = 0;
str_cat(s1, s2, &n);
printf("%s\n", s1);
printf("%d", *n);
bealing
bealing   Rxr 2016.03.18 18:43

void 函数如果想获取结果的话,常用的办法就是指针传参或这引用传参,不管是指针还是引用,在函数中修改后的结果都可以带出函数。

lx624909677
lx624909677   Ds   Rxr 2016.03.18 18:59

在函数内部就做输出动作,void只是个返回值,和要显示什么内容没有关系

qq_33486292
qq_33486292 那第二个问题呢?怎么输出长度?
2 年多之前 回复
caozhy
caozhy   Ds   Rxr 2016.03.18 19:50
 void str_cat(char*p1,char*p2, int* n)
{
    *n = strlen(s1);
        int i = 0;
    while (*p2 != '\0')
        {
            p1[n + i++] = *p2;
                p2++;
        }
        *n = *n + i - 1;
}
htiannuo
htiannuo   2016.03.18 20:09

用out和ref试试!

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
蓝桥杯 — 基础练习 特殊回文数(思路+详解)
题目要求如下: 问题描述   123321是一个非常特殊的数,它从左边读和从右边读是一样的。   输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于n 。
C语言之基本算法35—分解质因数(方法二)
//矩阵基础 /* ================================================================== 题目:输入一个正整数,将其分解为质因式,如:60=2*2*3*5;若本身是质数,则输出如:307是一个质数! ================================================================== */
人工智能三个基础问题的思考——学习笔记(一)
1,机器学习是用怎样的思路解决问题的?我们在机器学习中面临的任务最典型的是:有很多数据,怎样从现有数据建立一个模型,通过这个模型来预测未知的数据。这相模型就是一个从自变量到目标变量的一个映射:可以表示成y=f(x),只要我建立起了这样的模型,那有了自变量x,就可以通过模型求出y。答:机器学习学习的过程就是建立模型并求解f的过程。常用的模型,有决策树、线性回归、逻辑回归、SVM等等,这么多模型哪一种...
运用栈求解迷宫问题C/C++
用栈解决基本的迷宫问题C/C++ 1、问题描述:设置迷宫为m*n的二维数组,起点坐标为(1,1),中点坐标为(m,n),0为通路,1为死路,为防止数组越界将四周设置边界1,即数组变为(m+2)*(n+2)数组,迷宫如下....      迷宫 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 1 1 1
罚函数法求解约束问题最优解
对于包含约束的最优解问题,可以用罚函数来求解。
走迷宫问题——非递归算法
走迷宫问题 非递归算法 已经编译运行通过
C语言实现迷宫求解
最近做了一个用C语言迷宫求解的题目,来分享一下。 题目要求://迷宫的布局放入到一个二维的数组中 1代表该地方走不通为墙,0代表该地方可以走通,打印出来走的顺序  //0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 const int mizu[10][10] = {      1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1,  //0
编程小练~一元二次方程求解问题
如何考虑一元二次方程求解问题:求解思想:首先考虑a是否为0,若为0,则直接判断该方程不为一元二次方程。若不为0,则判断b^2-4ac和0的关系,若为0,判断该方程只有一个解并直接输出解为-b/2a,若大于0,判断该方程有两个解并输出解为(-b+sqrt(b^2-4ac)/2a,(-b-sqrt(b^2-4ac))/2a,若小于0,判断该方程无解。注意:浮点型和零之间的比较由于浮点数在内存中的存储方...
二次规划的C++源码:QuadProg++
官方网站 http://www.diegm.uniud.it/digaspero/index.php/software
线性规划问题的C语言程序
可求解一般的线性规划问题,用单纯形法中的大M法解决