VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 266|回复: 4

[已解决]函数 执行没有反应

[复制链接]
76_avatar_middle
最佳答案
0 
在线会员 发表于 2022-1-22 11:18:46 | 显示全部楼层 |阅读模式
3驿站币
using namespace std;
int OUTaaa(int INbbb, char* OUTccc, int* OUTddd);
//函数功能 根据 INbbb的值(入参) 返回 字符串OUTccc 数值OUTddd 及字符个数OUTaaa 的值
int OUTaaa(int INbbb, char* OUTccc, int* OUTddd)
{
        if (INbbb==0)
        {
                *OUTddd=0;
                OUTccc = "0000abcd";
        }
        else if (INbbb == 1)
        {
                *OUTddd=1;
                OUTccc = "1111abcd";
        }
        
        else
        {
               
        }
        return strlen(OUTccc);// 返回字符的长度
}

int main()
{
        int aa = 0, bb = 1;
        char* cc = "abcd";
        int *dd = 0;
        
        aa = OUTaaa(bb, cc, dd);// 调用函数
        cout << aa << "  是aa的值" << endl;
        cout << bb << "  是bb的值" << endl;
        cout << cc << "  是cc的值 字符个数是" << strlen(cc) << endl;
        cout << dd << "  是dd的值" << endl;

        return 0;
}

最佳答案

查看完整内容

已经回复了 https://www.cctry.com/thread-301636-1-1.html




上一篇:各位老师,请问我这个错在那里,没有任何返回值,
下一篇:编译VC6.0代码报错
41_avatar_middle
最佳答案
2 
online_vip 发表于 2022-1-22 11:18:47 | 显示全部楼层    本楼为最佳答案   
bestAnswer
已经回复了
https://www.cctry.com/thread-301636-1-1.html
46_avatar_middle
最佳答案
4 
在线会员 发表于 2022-1-22 16:40:41 | 显示全部楼层
char* cc = "abcd"; 你这里是想用字符串,还是想用字符指针?
46_avatar_middle
最佳答案
4 
在线会员 发表于 2022-1-22 16:51:02 | 显示全部楼层
从你的代码看来,是想用c语言中的字符串。如果是这样的话就不能   OUTccc = "1111abcd"; 这样子赋值是错误的。
c语言中的字符串只能在声明的时候立即初始化:char str[] = "hello";
以后再给str赋值:str = "world";这样子赋值时错误的,需要用strcpy函数拷贝给str
46_avatar_middle
最佳答案
4 
在线会员 发表于 2022-1-22 17:12:21 | 显示全部楼层
#include <iostream>
#include <cstring>

using namespace std;

int OUTaaa(int INbbb, char* OUTccc, int* OUTddd)
{
  if (INbbb==0)
  {
    *OUTddd=0;
    //OUTccc = "0000abcd";
    strcpy(OUTccc, "0000abcd");
  }
  else if (INbbb == 1)
  {
    *OUTddd=1;
    //OUTccc = "1111abcd";
    strcpy(OUTccc, "1111abcd");
  }
  {
            
  }
  return strlen(OUTccc);// 返回字符的长度
}

int main()
{
  int aa = 0, bb = 1;
  char cc[] = "abcd";//c语言格式的字符串
  int d = 0;
  int *dd = &d;
        
  aa = OUTaaa(bb, cc, dd);// 调用函数
  cout << aa << "  是aa的值" << endl;
  cout << bb << "  是bb的值" << endl;
  cout << cc << "  是cc的值 字符个数是" << strlen(cc) << endl;
  cout << dd << "  是dd的值" << endl;
  
  return 0;
}

这个可以显示,是你想要的吗?

你有2个问题:
1.c语言字符串的再次赋值有问题
2.指针的赋值也有错误

有疑问再交流
捕获.PNG
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号-4 )|网站地图wx_jqr

GMT+8, 2022-5-18 19:02

Powered by CcTry.CoM

© 2009-2021 cctry.com

快速回复 返回顶部 返回列表