qt tcp服务端应该怎样正确关闭,我反复开关tcp的服务端,客户端连接后,会出现程序异常

服务器第一次开启(RUN)的时候,客户端端连接上来是没有问题的。然后我关闭(STOP)服务器,再开启,客户端连接上来,就会程序异常。
我在处理有新连接的信号的槽函数里(即v_SlotConnection)做了打印,当第二次开启服务器,客户端连接上会两次进入v_SlotConnection,然后就程序异常了。bug解决了,是因为我把newConnection放在开始的按钮里,放出来就没问题了,原因不明白。

//开始运行tcp服务端
    if((ui->buttonrun->text())=="RUN")
    {
        qDebug()<<"RUN";
        //监听网卡下所有8087
        if(false == tcpServer->isListening())
        {
            tcpServer->listen(QHostAddress::Any, 8087);
        }

        //监听固定ip下 8087
//        tcpServer->listen(QHostAddress(ipAddr), serverPort);
        ui->buttonrun->setText("STOP");
    }
    else
    if((ui->buttonrun->text())=="STOP")
    {
        qDebug()<<"stop";
        ui->linkNumber->display(0);
        ui->buttonrun->setText("RUN");

        //主动和客户端端口断开
        if(NULL == tcpSocket)
        {
            //清空计数
            tcpServer->close();
        }
        else
        {
            //倒着断开加入链表的ip地址
            int i=clients.length()-1;
            qDebug()<<i<<"clients.length()"<<clients.length();
            while(i>=0)
            {
                clients.at(i)->disconnectFromHost();
                i--;
            }
            tcpServer->close();
        }
     }
        connect(tcpServer, &QTcpServer::newConnection, this, &ServerWidget::v_SlotConnection);
c++

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
关于建立一个TCP服务端出现阻塞问题

************************************ 这里是tcp客户端的代码 ************************************ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.Socket; import java.net.UnknownHostException; public class Socket_client { public static void main(String[] args) throws UnknownHostException, IOException { //first,创建一个socket对象 Socket s = new Socket("192.168.1.107",20000); //second,获取Socket中的输出流 OutputStream out = s.getOutputStream(); //third,发送信息 out.write("嘿嘿嘿".getBytes()); //添加读取服务器返回信息功能 //使用socket流读取服务器返回数据 InputStream in = s.getInputStream(); byte[] b = new byte[1024]; int len = in.read(b); String str = new String(b,0,len); System.out.println(str); //关闭资源 s.close(); } } ************************************ 这里是tcp服务端的代码 ************************************ import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.net.ServerSocket; import java.net.Socket; public class Server_Socket { public static void main(String[] agrs) throws IOException{ //先建立一个服务Socket ServerSocket ss = new ServerSocket(20000); //获取客户Socket对象 Socket s = ss.accept(); //使用客户的Socket对象将信息打印出来 InputStream in = s.getInputStream(); byte[] b = new byte[1024]; int len; while((len = in.read(b))!=-1){ //问题就出在这里,用循环读取,读取-1时,出现阻塞,后面代码无法运行 String str = new String(b,0,len); System.out.println(str); } //使用客户的Socket对象将成功接受信息的信息反馈给客户端 OutputStream out = s.getOutputStream(); out.write("成功接受到信息".getBytes()); //关闭资源 s.close(); ss.close(); } } 先执行了服务端,然后再执行客户端,服务端收到客户端发来的string后阻塞了,客户端也阻塞了,无法接受服务端回复的string 如果我把服务端循坏代码改成如下: //使用客户的Socket对象将信息打印出来 InputStream in = s.getInputStream(); byte[] b = new byte[1024]; int len = in.read(b); String str = new String(b,0,len); System.out.println(str); -------------------------------------------------- 程序能正常运行,为何,求解?

QT 多线程TCP通讯问题 程序异常退出

我在运行过一个网上下载的多线程服务器后,我自己写的单线程的客户端和服务端就不再连的上了, 我百度了一下说是可能是因为我多次调用了connectToHost,所以点击连接时程序会异常退出,但这个问题怎么解决呢?因为我现在是换了端口也连不上了。 错误提示我也没弄懂,这个函数在cpp里写了呀 ![图片说明](https://img-ask.csdn.net/upload/201908/23/1566529412_850530.png) 找到的解决方法说减少次数,可是我现在根本就连不上了。之前连的也不知道怎么删除。。。 ![图片说明](https://img-ask.csdn.net/upload/201908/23/1566528556_717591.png)

QT 启动了一个线程,在线程中实现TCPScoket通信,但连接不到服务器了

一、刚开始做的时候直接在主线程中测试了以下程序: 1.头文件 ``` class MainWindow : public QMainWindow { Q_OBJECT private slots: void on_pushButton_clicked(); void connected(); void readyread(); private: QTcpSocket *socket; }; 2.源文件 void MainWindow::on_pushButton_clicked() { this->socket=new QTcpSocket(); this->socket->connectToHost("10.10.15.11",26,QTcpSocket::ReadWrite); connect(this->socket,SIGNAL(connected()),this,SLOT(readyread())); } void MainWindow::connected() { connect(this->socket,SIGNAL(readyRead()),this,SLOT(readyread())); } void MainWindow::readyread() { QByteArray qba = socket->readAll(); } 这个时候是可以连接并接收到数据的。 二、现在需要在QT项目中启动一个线程,这个线程专门负责TCPScoket通信接收数据,程序如下: 1.头文件 class ThreadReceive : public QThread { Q_OBJECT private slots: void connected(); void readyread(); public: void run(); private: QTcpSocket *ScoketRecv; }; 2.源文件 void ThreadReceive::run() { this->ScoketRecv=new QTcpSocket(); this->ScoketRecv->connectToHost("10.10.15.11",26,QTcpSocket::ReadWrite); connect(this->ScoketRecv,SIGNAL(connected()),this,SLOT(connected())); } void ThreadReceive::connected() { connect(this->ScoketRecv,SIGNAL(readyRead()),this,SLOT(readyread())); } void ThreadReceive::readyread() { QByteArray recvBuf=ScoketRecv->readAll(); } ``` 在主线程中启动子线程之后会跳转到void ThreadReceive::run()函数中,但 connect(this->ScoketRecv,SIGNAL(connected()),this,SLOT(readyread()));一直连接不到,也就是跳不到void ThreadReceive::readyread()中。 麻烦大神看看是哪儿有问题,谢谢!

Qt5网络tcp协议,服务器发送文件,客户端接收文件,为什么客户端接收的文件大小是0kb

客户端: #include "client.h" #include "ui_client.h" #include <QDataStream> Client::Client(QWidget *parent) : QMainWindow(parent), ui(new Ui::Client) { ui->setupUi(this); //初始化创建的socket对象 msocket = new QTcpSocket(); recvsize = 0; filesize = 0; //连接服务器 QString ip = "192.168.199.93"; msocket->connectToHost(ip,6789); //连接固定的服务器 //接收服务器发来的数据 connect(msocket,SIGNAL(readyRead()),this,SLOT(read_data())); //当链接服务器成功的时候会发送connected信号,并向服务器发送接收到的文件名和文件大小 //connect(msocket, SIGNAL(connected()),this, SLOT(send_filename_size())); //成功接收一段数据会信号通知 connect(msocket,SIGNAL(bytesRead(qint64)),this, SLOT(send_file_content())); } Client::~Client() { delete ui; } //接收数据槽函数 void Client::read_data() { if(filesize == 0) //先接收文件名和文件大小 { //创建流对象与套接字绑定 QDataStream stream(msocket); QString name; stream.setVersion(QDataStream::Qt_5_4); stream>>filesize>>name; qDebug()<<filesize<<name; //设置进度条最大值 ui->progressBar->setMaximum(filesize); ui->progressBar->setValue(0); file.setFileName(name); int flag = file.open(QIODevice::WriteOnly); } else //接收内容 { if(recvsize < filesize) { qDebug()<<"1"; QByteArray array = msocket->readAll(); file.write(array); recvsize += array.size(); //设置进度条 ui->progressBar->setValue(recvsize); } if(recvsize == filesize) { file.close(); filesize = 0; recvsize = 0; msocket->close(); } } } 服务器: #include "server.h" #include "ui_server.h" #include <QDataStream> //数据流 Server::Server(QWidget *parent) : QMainWindow(parent), ui(new Ui::Server) { ui->setupUi(this); //初始化服务器对象 mserver = new QTcpServer(); //初始化客户端 msocket = new QTcpSocket(); //监听,需要ip地址和端口号 mserver->listen(QHostAddress::Any,6789); //定义固定的端口号 //关联新的客户端链接信号 connect(mserver,SIGNAL(newConnection()),this,SLOT(new_client())); } Server::~Server() { delete ui; } void Server::new_client() //证明有客户端已经连接成功 { qDebug()<<"新客户端链接"; msocket = mserver->nextPendingConnection(); msocket->write("hello"); } void Server::on_pushButton_2_clicked() //浏览文件按钮 { QString filepath = QFileDialog::getOpenFileName(this); ui->filepathEdit->setText(filepath); } void Server::on_pushButton_clicked() //发送按钮 { //先发送文件名和文件大小以及通知 //2.发送文件名, 文件大小 QString filepath = ui->filepathEdit->text(); QFileInfo info(filepath); //a.获取文件名 QString name = info.fileName(); //b.获取文件大小 quint64 size = info.size(); qDebug()<<name<<size; //输出文件名和文件大小 QByteArray array; //定义个数据流绑定array QDataStream stream(&array,QIODevice::WriteOnly); stream.setVersion(QDataStream::Qt_5_4); //把数据通过流形式存入到array中 stream<<size<<name; //打开文件 file.setFileName(filepath); bool flag = file.open(QIODevice::ReadOnly); if(!flag) { qDebug()<<"open fail"; return ; } //把发送字节数清空0 sendsize = 0; //设置进度条的最大值 ui->progressBar->setMaximum(size); //发送文件大小,文件名 msocket->write(array);//当对方收到数据后msocket会发送已经发送了多字节数据的信号 //成功发送一段数据会信号通知 connect(msocket,SIGNAL(bytesWritten(qint64)),this, SLOT(send_file_content())); } void Server::send_file_content() { //发送文件内容 if(file.isOpen()) //文件打开了,发送文件内容 { QByteArray array = file.read(SIZE); msocket->write(array); sendsize += array.size(); ui->progressBar->setValue(sendsize); qDebug()<<sendsize; if(file.atEnd()) { //关闭文件 file.close(); } } }

android客户端与qt服务端通过socket通信传图片的问题

android客户端: public void sendData(final String filepath) { new Thread() { @Override public void run() { try { Socket socket = new Socket(); // Socket socket = new Socket("192.168.1.108", 8888);//创建Socket实例,并绑定连接远端IP地址和端口 socket.connect(new InetSocketAddress("192.168.1.108", 8888)); Log.i("线程反馈1", "创建成功!"); // DataOutputStream out = new DataOutputStream(socket.getOutputStream()); // out.writeUTF("Helloworld"); //获取输出流 OutputStream ou = socket.getOutputStream(); //读取服务器响应 BufferedReader bff = new BufferedReader(new InputStreamReader( socket.getInputStream())); String line = null; String buffer = ""; while ((line = bff.readLine()) != null) { buffer = line + buffer; } //向服务器发送文件 File file = new File(filepath); if (file.exists()) { FileInputStream fileInput = new FileInputStream(filepath); DataOutputStream dos = new DataOutputStream(ou); // 文件名 dos.writeUTF(file.getName()); byte[] bytes = new byte[1024]; int length = 0; while ((length = fileInput.read(bytes)) != -1) { dos.write(bytes, 0, length); } //告诉服务端,文件已传输完毕 socket.shutdownOutput(); fileInput.close(); dos.close(); } //关闭各种输入输出流 ou.flush(); // bff.close(); ou.close(); socket.close(); } catch (Exception e) { Log.i("线程反馈", "线程异常!"); } } }.start(); } qt服务端: void MainWindow::readMessage() { QByteArray array; quint32 data_len = 0; quint32 len = 0xffffffff; //struct Head head; while(m_tcpSocket->waitForReadyRead(5000)){ qDebug()<<"bytesAvailable"<<endl; if(data_len == 0){ QDataStream in(m_tcpSocket); in >> len; qDebug("datalen:%d",len); } data_len += m_tcpSocket->bytesAvailable(); array.append((QByteArray)m_tcpSocket->readAll()); qDebug()<<data_len<<endl; if(data_len == len){ qDebug()<<"ok,all bytes revd"<<endl; break; } } qDebug()<<array; qDebug("recvd len:%d",data_len); QPixmap picture; picture.loadFromData(array,"jpeg"); picture.save("F:/test/test.jpg","jpg",-1); } 是哪出了问题,传字符串还有反应,传图片一直没反应

Qt中TCP通信是,如何在服务端区分登录,注册,还是文件传输信息?

登录和注册是把数据封装进Json传输的。注册登录在Json中用标志位来区分的,但是文件就不知道怎区分了!网上找的一些传输文件的方法都不能封装进Json,那就没办法用标志位来判断了,跪求大神告知解决方法。

客户端和服务端通过建立socket通信,协议是tcp/ip

有一个问题咨询:一个客户端和一个服务端通过tcp/ip连接(之间建立socket通信),在不断网的情况下,服务端关闭,客户端报警,重新开启服务器,客户端能够重新连接上服务端,但是如果拔掉网线,客户端就连接不上服务端了,但从服务端发送过来的数据还是可以读到,可是从客户端发送的数据不能到达服务端,这是为什么???

QT下多线程Tcp服务器,请问如何让不同的Socket线程互相通信?

# 其实就是想做一个聊天软件,奈何卡在这里想了半天也不知道怎么做。 # 一个客户端打开一个socket线程,然后在客户端输入消息,再发送给服务器端。 # 那么在服务器端怎么把消息发送给另外一个以及打开的客户端? # 之前用socketDescriptor,但不知道是不是不会用,反正不行。

QT中,如果要使用TCP协议实现文件传输功能,可以使用QNetworkAccessManager类吗,还是只能使用QTcpSocket和QTcpServer

QT中,如果要使用TCP协议实现文件传输功能,可以使用QNetworkAccessManager类吗,还是只能使用QTcpSocket和QTcpServer,QNetworkAccessManager建立连接是基于什么协议

tcp协议里服务器如何向客户端发数据

客户端向服务器发送数据没问题,但是服务器却无法向客户端发数据![图片](https://img-ask.csdn.net/upload/201612/15/1481771088_366654.jpg)

QT实现带心跳检测的TCP通讯,其中QBytearray赋值怎么理解

我在GitHub上下载了一个带有心跳检测机制的源码来学习,但客户端读取数据中,判断是否是服务端所发送的心跳检测数据这一行实在是没看懂,不知道逻辑是什么。(int)baRead[0]== 0x74是什么意思呢?还有之前看到过给一个QBytearray赋初值0xff的,搜了一圈也没找到结果。 (已弄懂,谢谢!) ![图片说明](https://img-ask.csdn.net/upload/201908/21/1566371343_823242.png) 我将服务器端发送的数据设为t后发现依旧不符合这个判断,在ui界面却多了一个字符,是这个字符影响了判断吗,但它是怎么产生的呢? 服务端设置数据: ![图片说明](https://img-ask.csdn.net/upload/201908/21/1566379390_702074.png) ![图片说明](https://img-ask.csdn.net/upload/201908/21/1566379492_53507.png) 客户端所接收的数据: ![图片说明](https://img-ask.csdn.net/upload/201908/21/1566379416_320383.png)

用qt5 socket写的服务器和客户端可以连接,但客户端不能给服务器传数据

服务器头文件/widget.h ``` #ifndef WIDGET_H #define WIDGET_H #include <QWidget> #include<QtNetwork> class QTcpServer; class QTcpSocket; namespace Ui { class Widget; } class Widget : public QWidget { Q_OBJECT public: explicit Widget(QWidget *parent = 0); ~Widget(); private slots: void readMessage(); //void DataReceived(); private: Ui::Widget *ui; QTcpServer *tcpServer; QTcpSocket *tcpSocket; QString message1; }; #endif // WIDGET_H ``` 服务器主函数/main.cpp ``` #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); Widget w; w.show(); return a.exec(); } ``` 服务器源文件/widget.cpp ``` #include "widget.h" #include "ui_widget.h" Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); tcpServer=new QTcpServer(this); tcpServer->listen(QHostAddress::Any,6666); connect(tcpServer,SIGNAL(newConnection()),this,SLOT(readMessage())); qDebug()<<"2"; } Widget::~Widget() { delete ui; } void Widget::readMessage() { QTcpSocket *clientConnection=tcpServer->nextPendingConnection(); qDebug()<<"2"; message1=clientConnection->readAll(); qDebug()<<message1; ui->statusLabel->setText(message1); qDebug()<<"1"; } ``` 客户端头文件/widget.h ``` #ifndef WIDGET_H #define WIDGET_H #include <QWidget> #include<QtNetwork> class QTcpSocket; namespace Ui { class Widget; } class Widget : public QWidget { Q_OBJECT public: explicit Widget(QWidget *parent = 0); ~Widget(); private slots: void newConnect(); void on_pushButton_clicked(); private: Ui::Widget *ui; QTcpSocket *tcpSocket; }; #endif // WIDGET_H ``` 客户端主函数/main.cpp ``` #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); Widget w; w.show(); return a.exec(); } ``` 客户端源文件/widget.cpp ``` #include "widget.h" #include "ui_widget.h" Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); tcpSocket=new QTcpSocket(this); } Widget::~Widget() { delete ui; } void Widget::newConnect() { tcpSocket->abort(); tcpSocket->connectToHost("localhost",6666); qDebug()<<"631"; } void Widget::on_pushButton_clicked() { newConnect(); tcpSocket->write("2"); } ``` 通过调试发现,服务器和客户端可以连接,但是就是不能**从客户端向服务器**发送数据,qt入门级别,请指教,谢谢啦

QT中readyRead()信号如何多次触发

一个可以登录注册的小聊天程序 qt做客户端 linux c写服务器 想在登录界面和聊天界面都用readyRead()信号触发自己写的readmessage()函数处理服务器发回来的消息 可是只有第一个次可以触发信号进入readmessage,其他时候都不行 求教

关于socket Tcp客户端连接超时的问题

![图片说明](https://img-ask.csdn.net/upload/201708/11/1502431558_962329.png) 简单描述一下需求:我这里需要通过socket客户端长连接一直不停的往服务器发送数据,我这边也对socket就行判断了,如果连接不上就关闭再重新连接,过几个小时就会出现连接超时的情况,大致就是这样,求大神指教。。。

关于用QT写一个简单客户端与服务器,请问客户端如何获取服务器的文件目录?

客户端服务器通过局域网tcp连接,客户端该怎么把服务器的目录用treeview表示?而且速度尽量要快,要是在服务器把目录生成txt再发给客户端让客户端解析,文件多了会很慢吧?有什么好的方法吗?谢谢了。

标准的modbus-tcp协议中,server端允许向client端发送数据吗?

问题如题,如果可以的话,在QT5.0中,QModbusTcpServer类的对象如何发送数据到客户端?谢谢

我用pyqt写的界面,同学用套接字写客户端,另一个人用套接字写服务端,谁来组合程序啊?

我用pyqt写的界面,同学用套接字写的客户端,另一个人用套接字写的服务端(就是最简单的老师在课上用python跑的那个聊天的群聊客户端和服务端),我想知道谁来组合程序啊?难道是我这个写界面的?他们都吧代码扔给我,我去,本来写pyqt界面就是临时学的,搞了一下,现在好懵,不知道从何下手,难道公司里也是写界面的搞? 我真的无从下手感觉

使用QT,主机做了一个服务端,局域网中可以连接别人,别人连接自己输入字符就会断开连接

cmd下使用telnet也是输入字符就断开连接 电脑杀毒软件一直没启动,防火墙全部关闭,端口号10000 然后写了个客户端,同样的问题,输入字符断开连接。楼下依次上图

QT编写程序使之能与串口调试助手通讯

在linux系统中用QT编程,实现与windows串口调试助手通信 PS:没有界面,这段程序最后要烧进芯片里

MySQL 8.0.19安装教程(windows 64位)

话不多说直接开干 目录 1-先去官网下载点击的MySQL的下载​ 2-配置初始化的my.ini文件的文件 3-初始化MySQL 4-安装MySQL服务 + 启动MySQL 服务 5-连接MySQL + 修改密码 先去官网下载点击的MySQL的下载 下载完成后解压 解压完是这个样子 配置初始化的my.ini文件的文件 ...

Python+OpenCV计算机视觉

Python+OpenCV计算机视觉系统全面的介绍。

Vue.js 2.0之全家桶系列视频课程

基于新的Vue.js 2.3版本, 目前新全的Vue.js教学视频,让你少走弯路,直达技术前沿! 1. 包含Vue.js全家桶(vue.js、vue-router、axios、vuex、vue-cli、webpack、ElementUI等) 2. 采用笔记+代码案例的形式讲解,通俗易懂

navicat(内含激活码)

navicat支持mysql的可视化操作,内涵激活码,不用再忍受弹框的痛苦。

HTML期末大作业

这是我自己做的HTML期末大作业,花了很多时间,稍加修改就可以作为自己的作业了,而且也可以作为学习参考

150讲轻松搞定Python网络爬虫

【为什么学爬虫?】 &nbsp; &nbsp; &nbsp; &nbsp;1、爬虫入手容易,但是深入较难,如何写出高效率的爬虫,如何写出灵活性高可扩展的爬虫都是一项技术活。另外在爬虫过程中,经常容易遇到被反爬虫,比如字体反爬、IP识别、验证码等,如何层层攻克难点拿到想要的数据,这门课程,你都能学到! &nbsp; &nbsp; &nbsp; &nbsp;2、如果是作为一个其他行业的开发者,比如app开发,web开发,学习爬虫能让你加强对技术的认知,能够开发出更加安全的软件和网站 【课程设计】 一个完整的爬虫程序,无论大小,总体来说可以分成三个步骤,分别是: 网络请求:模拟浏览器的行为从网上抓取数据。 数据解析:将请求下来的数据进行过滤,提取我们想要的数据。 数据存储:将提取到的数据存储到硬盘或者内存中。比如用mysql数据库或者redis等。 那么本课程也是按照这几个步骤循序渐进的进行讲解,带领学生完整的掌握每个步骤的技术。另外,因为爬虫的多样性,在爬取的过程中可能会发生被反爬、效率低下等。因此我们又增加了两个章节用来提高爬虫程序的灵活性,分别是: 爬虫进阶:包括IP代理,多线程爬虫,图形验证码识别、JS加密解密、动态网页爬虫、字体反爬识别等。 Scrapy和分布式爬虫:Scrapy框架、Scrapy-redis组件、分布式爬虫等。 通过爬虫进阶的知识点我们能应付大量的反爬网站,而Scrapy框架作为一个专业的爬虫框架,使用他可以快速提高我们编写爬虫程序的效率和速度。另外如果一台机器不能满足你的需求,我们可以用分布式爬虫让多台机器帮助你快速爬取数据。 &nbsp; 从基础爬虫到商业化应用爬虫,本套课程满足您的所有需求! 【课程服务】 专属付费社群+每周三讨论会+1v1答疑

三个项目玩转深度学习(附1G源码)

从事大数据与人工智能开发与实践约十年,钱老师亲自见证了大数据行业的发展与人工智能的从冷到热。事实证明,计算机技术的发展,算力突破,海量数据,机器人技术等,开启了第四次工业革命的序章。深度学习图像分类一直是人工智能的经典任务,是智慧零售、安防、无人驾驶等机器视觉应用领域的核心技术之一,掌握图像分类技术是机器视觉学习的重中之重。针对现有线上学习的特点与实际需求,我们开发了人工智能案例实战系列课程。打造:以项目案例实践为驱动的课程学习方式,覆盖了智能零售,智慧交通等常见领域,通过基础学习、项目案例实践、社群答疑,三维立体的方式,打造最好的学习效果。

基于STM32的电子时钟设计

时钟功能 还有闹钟功能,温湿度功能,整点报时功能 你值得拥有

学生成绩管理系统(PHP + MYSQL)

做的是数据库课程设计,使用的php + MySQL,本来是黄金搭配也就没啥说的,推荐使用wamp服务器,里面有详细的使用说明,带有界面的啊!呵呵 不行的话,可以给我留言!

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

程序员的兼职技能课

获取讲师答疑方式: 在付费视频第一节(触摸命令_ALL)片头有二维码及加群流程介绍 限时福利 原价99元,今日仅需39元!购课添加小助手(微信号:itxy41)按提示还可领取价值800元的编程大礼包! 讲师介绍: 苏奕嘉&nbsp;前阿里UC项目工程师 脚本开发平台官方认证满级(六级)开发者。 我将如何教会你通过【定制脚本】赚到你人生的第一桶金? 零基础程序定制脚本开发课程,是完全针对零脚本开发经验的小白而设计,课程内容共分为3大阶段: ①前期将带你掌握Q开发语言和界面交互开发能力; ②中期通过实战来制作有具体需求的定制脚本; ③后期将解锁脚本的更高阶玩法,打通任督二脉; ④应用定制脚本合法赚取额外收入的完整经验分享,带你通过程序定制脚本开发这项副业,赚取到你的第一桶金!

实用主义学Python(小白也容易上手的Python实用案例)

原价169,限时立减100元! 系统掌握Python核心语法16点,轻松应对工作中80%以上的Python使用场景! 69元=72讲+源码+社群答疑+讲师社群分享会&nbsp; 【哪些人适合学习这门课程?】 1)大学生,平时只学习了Python理论,并未接触Python实战问题; 2)对Python实用技能掌握薄弱的人,自动化、爬虫、数据分析能让你快速提高工作效率; 3)想学习新技术,如:人工智能、机器学习、深度学习等,这门课程是你的必修课程; 4)想修炼更好的编程内功,优秀的工程师肯定不能只会一门语言,Python语言功能强大、使用高效、简单易学。 【超实用技能】 从零开始 自动生成工作周报 职场升级 豆瓣电影数据爬取 实用案例 奥运冠军数据分析 自动化办公:通过Python自动化分析Excel数据并自动操作Word文档,最终获得一份基于Excel表格的数据分析报告。 豆瓣电影爬虫:通过Python自动爬取豆瓣电影信息并将电影图片保存到本地。 奥运会数据分析实战 简介:通过Python分析120年间奥运会的数据,从不同角度入手分析,从而得出一些有趣的结论。 【超人气老师】 二两 中国人工智能协会高级会员 生成对抗神经网络研究者 《深入浅出生成对抗网络:原理剖析与TensorFlow实现》一书作者 阿里云大学云学院导师 前大型游戏公司后端工程师 【超丰富实用案例】 0)图片背景去除案例 1)自动生成工作周报案例 2)豆瓣电影数据爬取案例 3)奥运会数据分析案例 4)自动处理邮件案例 5)github信息爬取/更新提醒案例 6)B站百大UP信息爬取与分析案例 7)构建自己的论文网站案例

Java8零基础入门视频教程

这门课程基于主流的java8平台,由浅入深的详细讲解了java SE的开发技术,可以使java方向的入门学员,快速扎实的掌握java开发技术!

Python数据挖掘简易入门

&nbsp; &nbsp; &nbsp; &nbsp; 本课程为Python数据挖掘方向的入门课程,课程主要以真实数据为基础,详细介绍数据挖掘入门的流程和使用Python实现pandas与numpy在数据挖掘方向的运用,并深入学习如何运用scikit-learn调用常用的数据挖掘算法解决数据挖掘问题,为进一步深入学习数据挖掘打下扎实的基础。

零基础学C#编程—C#从小白到大咖

本课程从初学者角度出发,提供了C#从入门到成为程序开发高手所需要掌握的各方面知识和技术。 【课程特点】 1 由浅入深,编排合理; 2 视频讲解,精彩详尽; 3 丰富实例,轻松易学; 4 每章总结配有难点解析文档。 15大章节,228课时,1756分钟与你一同进步!

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

多功能数字钟.zip

利用数字电子计数知识设计并制作的数字电子钟(含multisim仿真),该数字钟具有显示星期、24小时制时间、闹铃、整点报时、时间校准功能

极简JAVA学习营第四期(报名以后加助教微信:eduxy-1)

想学好JAVA必须要报两万的培训班吗? Java大神勿入 如果你: 零基础想学JAVA却不知道从何入手 看了一堆书和视频却还是连JAVA的环境都搭建不起来 囊中羞涩面对两万起的JAVA培训班不忍直视 在职没有每天大块的时间专门学习JAVA 那么恭喜你找到组织了,在这里有: 1. 一群志同道合立志学好JAVA的同学一起学习讨论JAVA 2. 灵活机动的学习时间完成特定学习任务+每日编程实战练习 3. 热心助人的助教和讲师及时帮你解决问题,不按时完成作业小心助教老师的家访哦 上一张图看看前辈的感悟: &nbsp; &nbsp; 大家一定迫不及待想知道什么是极简JAVA学习营了吧,下面就来给大家说道说道: 什么是极简JAVA学习营? 1. 针对Java小白或者初级Java学习者; 2. 利用9天时间,每天1个小时时间; 3.通过 每日作业 / 组队PK / 助教答疑 / 实战编程 / 项目答辩 / 社群讨论 / 趣味知识抢答等方式让学员爱上学习编程 , 最终实现能独立开发一个基于控制台的‘库存管理系统’ 的学习模式 极简JAVA学习营是怎么学习的? &nbsp; 如何报名? 只要购买了极简JAVA一:JAVA入门就算报名成功! &nbsp;本期为第四期极简JAVA学习营,我们来看看往期学员的学习状态: 作业看这里~ &nbsp; 助教的作业报告是不是很专业 不交作业打屁屁 助教答疑是不是很用心 &nbsp; 有奖抢答大家玩的很嗨啊 &nbsp; &nbsp; 项目答辩终于开始啦 &nbsp; 优秀者的获奖感言 &nbsp; 这是答辩项目的效果 &nbsp; &nbsp; 这么细致的服务,这么好的氛围,这样的学习效果,需要多少钱呢? 不要1999,不要199,不要99,只要9.9 是的你没听错,只要9.9以上所有就都属于你了 如果你: 1、&nbsp;想学JAVA没有基础 2、&nbsp;想学JAVA没有整块的时间 3、&nbsp;想学JAVA没有足够的预算 还等什么?赶紧报名吧,抓紧抢位,本期只招300人,错过只有等时间待定的下一期了 &nbsp; 报名请加小助手微信:eduxy-1 &nbsp; &nbsp;

Python可以这样学(第一季:Python内功修炼)

董付国系列教材《Python程序设计基础》、《Python程序设计(第2版)》、《Python可以这样学》配套视频,讲解Python 3.5.x和3.6.x语法、内置对象用法、选择与循环以及函数设计与使用、lambda表达式用法、字符串与正则表达式应用、面向对象编程、文本文件与二进制文件操作、目录操作与系统运维、异常处理结构。

Java基础知识面试题(2020最新版)

文章目录Java概述何为编程什么是Javajdk1.5之后的三大版本JVM、JRE和JDK的关系什么是跨平台性?原理是什么Java语言有哪些特点什么是字节码?采用字节码的最大好处是什么什么是Java程序的主类?应用程序和小程序的主类有何不同?Java应用程序与小程序之间有那些差别?Java和C++的区别Oracle JDK 和 OpenJDK 的对比基础语法数据类型Java有哪些数据类型switc...

机器学习实战系列套餐(必备基础+经典算法+案例实战)

机器学习实战系列套餐以实战为出发点,帮助同学们快速掌握机器学习领域必备经典算法原理并结合Python工具包进行实战应用。建议学习顺序:1.Python必备工具包:掌握实战工具 2.机器学习算法与实战应用:数学原理与应用方法都是必备技能 3.数据挖掘实战:通过真实数据集进行项目实战。按照下列课程顺序学习即可! 课程风格通俗易懂,用最接地气的方式带领大家轻松进军机器学习!提供所有课程代码,PPT与实战数据,有任何问题欢迎随时与我讨论。

Java面试题大全(2020版)

发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全,希望对大家有帮助哈~ 本套Java面试题大全,全的不能再全,哈哈~ 一、Java 基础 1. JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。 JRE:Java Runtime Environ...

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

深度学习原理+项目实战+算法详解+主流框架(套餐)

深度学习系列课程从深度学习基础知识点开始讲解一步步进入神经网络的世界再到卷积和递归神经网络,详解各大经典网络架构。实战部分选择当下最火爆深度学习框架PyTorch与Tensorflow/Keras,全程实战演示框架核心使用与建模方法。项目实战部分选择计算机视觉与自然语言处理领域经典项目,从零开始详解算法原理,debug模式逐行代码解读。适合准备就业和转行的同学们加入学习! 建议按照下列课程顺序来进行学习 (1)掌握深度学习必备经典网络架构 (2)深度框架实战方法 (3)计算机视觉与自然语言处理项目实战。(按照课程排列顺序即可)

HoloLens2开发入门教程

本课程为HoloLens2开发入门教程,讲解部署开发环境,安装VS2019,Unity版本,Windows SDK,创建Unity项目,讲解如何使用MRTK,编辑器模拟手势交互,打包VS工程并编译部署应用到HoloLens上等。

几率大的Redis面试题(含答案)

本文的面试题如下: Redis 持久化机制 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题 热点数据和冷数据是什么 Memcache与Redis的区别都有哪些? 单线程的redis为什么这么快 redis的数据类型,以及每种数据类型的使用场景,Redis 内部结构 redis的过期策略以及内存淘汰机制【~】 Redis 为什么是单线程的,优点 如何解决redis的并发竞争key问题 Red...

MFC一站式终极全套课程包

该套餐共包含从C小白到C++到MFC的全部课程,整套学下来绝对成为一名C++大牛!!!

【数据结构与算法综合实验】欢乐连连看(C++ & MFC)案例

这是武汉理工大学计算机学院数据结构与算法综合实验课程的第三次项目:欢乐连连看(C++ & MFC)迭代开发代码。运行环境:VS2017。已经实现功能:开始游戏、消子、判断胜负、提示、重排、计时、帮助。

YOLOv3目标检测实战:训练自己的数据集

YOLOv3是一种基于深度学习的端到端实时目标检测方法,以速度快见长。本课程将手把手地教大家使用labelImg标注和使用YOLOv3训练自己的数据集。课程分为三个小项目:足球目标检测(单目标检测)、梅西目标检测(单目标检测)、足球和梅西同时目标检测(两目标检测)。 本课程的YOLOv3使用Darknet,在Ubuntu系统上做项目演示。包括:安装Darknet、给自己的数据集打标签、整理自己的数据集、修改配置文件、训练自己的数据集、测试训练出的网络模型、性能统计(mAP计算和画出PR曲线)和先验框聚类。 Darknet是使用C语言实现的轻型开源深度学习框架,依赖少,可移植性好,值得深入探究。 除本课程《YOLOv3目标检测实战:训练自己的数据集》外,本人推出了有关YOLOv3目标检测的系列课程,请持续关注该系列的其它课程视频,包括: 《YOLOv3目标检测实战:交通标志识别》 《YOLOv3目标检测:原理与源码解析》 《YOLOv3目标检测:网络模型改进方法》 敬请关注并选择学习!

u-boot-2015.07.tar.bz2

uboot-2015-07最新代码,喜欢的朋友请拿去

相关热词 c#跨线程停止timer c#批量写入sql数据库 c# 自动安装浏览器 c#语言基础考试题 c# 偏移量打印是什么 c# 绘制曲线图 c#框体中的退出函数 c# 按钮透明背景 c# idl 混编出错 c#在位置0处没有任何行
立即提问