为什么C语言会输出一堆奇怪的数字

img


请问是哪里出错了呢,在python上跑的好好的,但是在c上却跑不了,代码逻辑应该都是一样的啊

t=a赋值早了呀
你要写到scanf后面才对,你写前面a还没有值呢

int t = a;
这里a没有初始值,所以t的结果是随机的
所以s最后也是随机的。

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7737602
  • 这篇博客你也可以参考下:python如何判断字符串的结尾,是否和c语言一样
  • 除此之外, 这篇博客: python如何调用C, 如何注册成C的回调函数(python后台程序常用方法)中的 C代码是这样滴: 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    unsigned long VideoAnalyzeInit(char* szFilename)
    {
        VideoAnalyzeManage* pManager = new VideoAnalyzeManage(szFilename);
        if(pManager)
        {
            int iRet = pManager->Init();
            if(iRet != 0)
            {
                delete pManager;
                return 0;
            }
        }
        return (unsigned long)pManager;
    }
    void EnableBlackDetected(unsigned long ulHandle)
    {
        VideoAnalyzeManage* pManager = (VideoAnalyzeManage*)ulHandle;
        if(pManager)
        {
            pManager->EnableBlackDetected();
        }
    }


    就像C语言编译出来的.so库只是python的一个模块,直接调用就可以了。


  • 您还可以看一下 唐宇迪老师的Python数据分析与机器学习实战课程中的 软间隔C值对结果的影响小节, 巩固相关知识点
  • 以下回答来自chatgpt:

    由于没有提供具体的代码和输出,无法确定问题所在。建议先检查代码的语法和逻辑,是否符合C语言的规范。然后可以尝试在代码中加入一些打印语句,检查变量的取值是否正确。如果无法解决问题,建议提供更多的信息和代码,以便更好地帮助解决问题。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^