关于如何利用ChatGPT提高编程效率的

自从去年ChatGPT3.5推出以后,这一年时间在编程过程中我也在慢慢熟悉人工智能的使用,目前来看即使是免费的ChatGPT3.5对于编程效率的提升也是有很大帮助的,虽然在使用过程中确实出现了一些问题,本文记录下我的一些心得体会和用法。

1.直接生成代码

目前来看想让3.5直接生成长段代码且不出错是很难实现的,我暂时还不知道4.0是否有解决这一问题,不过如果将大段的代码拆分成小段的函数来生成,那么最终实现的结果还是能勉强符合要求。

这里举个例子,假设我希望让ChatGPT生成一套学生成绩管理系统,可以要求其先生成主体内容,保留增删改查功能对应的函数,然后逐个生成函数来填补空缺。

2.代码批量修改

我个人在使用这一功能的时候主要是针对C语言的,之前在学校使用VC6.0编写C语言的时候代码大量使用了scanf()之类的函数,但是在新版C11中scanf()以及其他一些函数会被标记为不安全,这时就可以使用ChatGPT批量替换其中的内容,同时其会自行完善代码结构。

3.代码纠错

作为一个大语言模型,ChatGPT对于文字的敏感程度远高于人的肉眼,尤其是在数据类型的分辨上,可以利用这一点排查代码中是否有对于数据类型的误用。

4.编程语言转换

这是一个很有意思的点,因为ChatGPT熟悉各类编程语言,所以只要代码通顺,其是可以在不同的编程语言间进行转换的,甚至连使用的第三方库都能找到合适的替代品,这里我先让ChatGPT使用Java代码生成了一个窗口,然后又命令其转化为Python代码,可以看到其自动添加了TKinter来生成窗口。

5.正则表达式

可以直接上传代码,也可以令其生成固定格式的正则表达式。

6.高效的搜索引擎

依靠ChatGPT庞大的数据库,其可以对编程相关的知识做出更直观和精确的回答,而不用翻阅冗长的开发文档,同时ChatGPT本身带有归纳整理功能,生成的答案也更为简介。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/354908.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Peter算法小课堂—二叉堆(优先队列)

课前小视频:(7 封私信 / 62 条消息) 看动画,学算法,C实现建立二叉堆,优先队列和堆排序的基础 - 知乎 (zhihu.com) 二叉堆(优先队列) 大家想想,什么数据结构能做到插入(删除&#x…

IDEA 构建开发环境

本博客主要讲解了如何创建一个Maven构建Java项目。(本文是创建一个用Maven构建项目的方式,所以需要对Maven有一定的了解) IDEA 构建开发环境 一、创建一个空工程二、构建一个普通的Maven模块 一、创建一个空工程 创建一个空的工程 * 设置整…

声音模拟训练

环境配置 参考文章: https://github.com/SUC-DriverOld/so-vits-svc-Chinese-Detaild-Documents 1:打开CMD nvidia-smi.exe 查询显卡 cuda VERSION:12.3 2:打开https://pytorch.org/get-started 我的系统是12.3 3:使用google 搜索 nvidia develope…

哈希概念 | 哈希函数 | 哈希冲突 | 哈希桶实现 | 哈希线性探测代码实现 | 闭散列 | 开散列 | 字符串哈希算法

文章目录 1.哈希概念2.哈希冲突3.解决哈希冲突3.1.闭散列3.2.开散列 4.字符串哈希算法 1.哈希概念 顺序结构以及平衡树中,元素关键码与其存储位置之间没有对应的关系,因此在查找一个元素时,必须要经过关键码的多次比较。如果一个顺序结构&am…

80.网游逆向分析与插件开发-背包的获取-自动化助手显示物品数据1

内容参考于:易道云信息技术研究院VIP课 上一个内容:升级Notice类获得背包基址-CSDN博客 码云地址(ui显示角色数据 分支):https://gitee.com/dye_your_fingers/sro_-ex.git 码云版本号:3be017de38c50653b…

BGP:04 fake-as

使用 fake-as 可以将本地真实的 AS 编号隐藏,其他 AS 内的对等体在指定本端对等体所在的AS 编号时,应该设置成这个伪AS 编号。 这是实验拓扑,IBGP EBGP 邻居都使用物理接口来建立 基本配置: R1: sys sysname R1 int loo0 ip add…

面了快手电商数据分析师岗(实习),被问的汗流浃背。。。。

最近技术群的一位同学,分享了他面试快手数据分析师岗(实习)的经验。我看了一下面试题,说实话内容不难,他直言没有认真准备。 今天整理后分享给大家,如果你对这块面试感兴趣,可以文末加入我们的面试、技术群 内容 1&…

时序预测 | Python基于Multihead-Attention-TCN-LSTM的时间序列预测

目录 效果一览基本介绍程序设计参考资料 效果一览 基本介绍 时序预测 | Python基于Multihead-Attention-TCN-LSTM的时间序列预测 Multihead-Attention-TCN-LSTM(多头注意力-TCN-LSTM)是一种结合了多个注意力机制、时序卷积网络(TCN&#xff0…

解决方案|构建生物医学科技桥梁:镭速客户案例分享

随着生物科技在医学领域的快速发展,数据传输在实现医疗创新和科学研究中的重要性变得日益突出。数据不仅庞大,而且高度敏感,传统的数据传输方式已经无法满足医学行业对高效、快速的数据交流需求。 如今市场上备受关注的解决方案是基于UDP传输…

计算机毕业设计 基于SpringBoot的校园闲置物品交易系统的设计与实现 Java实战项目 附源码+文档+视频讲解

博主介绍:✌从事软件开发10年之余,专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 🍅文末获取源码联系🍅 👇🏻 精…

【gmsh源码阅读】OCC对象绑定tag及获取几何与网格映射关系

一、Tag是什么? gmsh中的几何模型相对于OCC的模型增加了id编号,也叫tag,在gmsh中可以显示出来。在gmsh中,点、线、面、体都有Tag,以方便对其查找定位查找。在OCC中TopoDS_Shape只有几何与拓扑结构,没有唯一…

数据中心代理IP:最优性价比业务应用指南

数据中心代理IP在应对高速高并发的业务时,以独特的高速传输,游刃有余地应对多任务处理,适合于特定业务场景的高效加速。理性选用数据中心代理IP,可以为业务将迎来更加稳健和迅速的发展。今天,我们将揭示数据中心代理IP…

【Linux】分区向左扩容的方法

文章目录 为什么是向左扩容操作前的备份方法:启动盘试用Ubuntu后进行操作 为什么是向左扩容 Linux向右扩容非常简单,无论是系统自带的disks工具还是apt安装的gparted工具,都有图像化的界面可以操作。但是,都不支持向左扩容。笔者…

MC3172 串口模块

MC3172 支持12个串口对应关系如下 串口模块初始化 第一个是uart0~11 inpin RX 脚 管脚号 outpin TX脚 管脚号 baud 波特率 read_ptr ,数据读取指针 void uart_init(u32 uart_num,u8 in_pin,u8 out_pin,u32 baud,u8* read_ptr) {INTDEV_SET_CLK_RST(uart_num,(INTDEV_RUN|…

《动手学深度学习(PyTorch版)》笔记4.6

注:书中对代码的讲解并不详细,本文对很多细节做了详细注释。另外,书上的源代码是在Jupyter Notebook上运行的,较为分散,本文将代码集中起来,并加以完善,全部用vscode在python 3.9.18下测试通过。…

MyBatis详解(3)-- 动态代理及映射器

MyBatis详解(3) mybatis 动态代理动态代理的规范selectOne和selectListnamespace mybatis映射器映射器的引入: 映射器的组成select 元素结构:单个参数传递多个参数传递 insert 元素结构主键回填:自定义主键生成规则 u …

Linux中查看端口被哪个进程占用、进程调用的配置文件、目录等

1.查看被占用的端口的进程,netstat/ss -antulp | grep :端口号 2.通过上面的命令就可以列出,这个端口被哪些应用程序所占用,然后找到对应的进程PID https://img-blog.csdnimg.cn/c375eb2bed754426b373907acaa7346e.png 3.根据PID查询进程。…

Kafka-服务端-GroupCoordinator

在每一个Broker上都会实例化一个GroupCoordinator对象,Kafka按照Consumer Group的名称将其分配给对应的GroupCoordinator进行管理; 每个GroupCoordinator只负责管理Consumer Group的一个子集,而非集群中全部的Consumer Group。 请注意与Kaf…

数据结构篇-03:堆实现优先级队列

本文着重在于讲解用 “堆实现优先级队列” 以及优先级队列的应用,在本文所举的例子中,可能使用优先级队列来解并不是最优解法,但是正如我所说的:本文着重在于讲解“堆实现优先级队列” 堆实现优先级队列 堆的主要应用有两个&…

OpenCV 2 - 矩阵的掩膜操作

1知识点 1-1 CV_Assert(myImage.depth() == CV_8U); 确保输入图像是无符号字符类型,若该函数括号内的表达式为false,则会抛出一个错误。 1-2 Mat.ptr(int i = 0); 获取像素矩阵的指针,索引 i 表示第几行,从0开始计行数。 1-3 const uchar* current = mylmage.ptr(row); 获得…