c++ linux tcp编程
2015-01-13 21:56:05 chuchus 阅读数 591

Linux下为了安全性不能双击执行控制台程序,只有GUI程序才能双击执行.

源代码文件

linux下文件的类型是不依赖于其后缀名的,但一般来讲:
.o,是目标文件,相当于windows中的.obj文件
.so 为共享库,是shared object,用于动态连接的,和dll差不多
.a为静态库,是好多个.o合在一起,用于静态连接,和.lib差不多

部署工具

CodeBlocks开发环境搭建:

sudo apt-get install g++                                  sudo apt-get install codeblocks

Make
一个工具,读取Makefile文件中的依赖关系,它帮你调用编译器进行构建。
CMake
一个工具。因为编写Makefile文件太繁琐,所以有了CMake,它读取的配置文件是CMakeLists.txt,然后生成Makefile,然后交由make工具处理。


图形编程

gtk。图形界面程序 开发框架,主要用于linux下的c/c++开发。

安装gtk+
#开发相关的库文件:libgtk2.0-dev libglib2.0-dev
相应的命令:
apt-get install libgtk2.0-dev libglib2.0-dev

2012-01-13 20:39:04 bbbbbbj 阅读数 284
       这几天开始学使用 linux, 学习使用 ubuntu。 下边工作主要搭建Linux下的 C++编程环境。
2015-01-13 21:56:00 weixin_34186128 阅读数 2

Linux下为了安全性不能双击执行控制台程序,只有GUI程序才能双击执行.

源代码文件

linux下文件的类型是不依赖于其后缀名的,但一般来讲:
.o,是目标文件,相当于windows中的.obj文件
.so 为共享库,是shared object,用于动态连接的,和dll差不多
.a为静态库,是好多个.o合在一起,用于静态连接,和.lib差不多

部署工具

CodeBlocks开发环境搭建:

sudo apt-get install g++                                  sudo apt-get install codeblocks

Make
一个工具,读取Makefile文件中的依赖关系,它帮你调用编译器进行构建。
CMake
一个工具。因为编写Makefile文件太繁琐,所以有了CMake,它读取的配置文件是CMakeLists.txt,然后生成Makefile,然后交由make工具处理。


图形编程

gtk。图形界面程序 开发框架,主要用于linux下的c/c++开发。

安装gtk+
#开发相关的库文件:libgtk2.0-dev libglib2.0-dev
相应的命令:
apt-get install libgtk2.0-dev libglib2.0-dev

2010-06-05 15:23:00 lucky5man 阅读数 1750

很久以前写过一次,不过那时候时懵懵懂懂的,我也不知道我自己到底有没有弄懂。现在又来把它重温一遍,虽然是简单的winsocket,但是从新看,还是有不同的感受。在这里把winsock的面向连接的代码给出

服务器端:

客户端:

2017-04-14 13:36:05 WLFF_CSDN 阅读数 540

代码来源:《Windows网络编程》(罗莉琴,詹祖桥 主编)(如造成任何不便,请联系我删除)

// TcpClient.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <winsock2.h>
#include <string>
#include <iostream>

#pragma comment(lib,"ws2_32.lib")

#define BUF_SIZE 64 //缓冲区大小


int _tmain(int argc, _TCHAR* argv[])
{
	WSADATA wsd;//用于初始化Windows Socket
	SOCKET sHost;//与服务器进行通信的Socket
	SOCKADDR_IN servAddr;//服务器地址
	char buf[BUF_SIZE];//用于接受数据缓冲区
	int retVal;//调用各种Socket函数的返回值

	//---------初始化Socket-------------------
	if (WSAStartup(MAKEWORD(2, 2), &wsd) != 0)
	{
		printf("WSAStartup failed !\n");
		return -1;
	}

	//--------------创建Socket----------------------------
	sHost = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);//(指定协议的地址家族,指定套接字的类型,套接字使用的协议)
	if (INVALID_SOCKET == sHost)
	{
		printf("socket failed !\n");
		WSACleanup();
		return -1;
	}

	//----------设置服务器的Socket地址---------------------
	servAddr.sin_family = AF_INET;
	servAddr.sin_port = htons(9990);
	servAddr.sin_addr.S_un.S_addr = htonl(INADDR_ANY);

	int sServerAddlen = sizeof(servAddr);

	//--------------连接到服务器-----------------------------
	retVal = connect(sHost,(LPSOCKADDR)&servAddr,sizeof(servAddr));
	if (SOCKET_ERROR == retVal)
	{
		printf("connect failed!\n");
		closesocket(sHost);
		WSACleanup();
		return -1;
	}

	//信息交互
	while (true)
	{
		//向服务器发送数据
		printf("Please input a string to send:");
		std::string str;
		std::getline(std::cin,str);
		ZeroMemory(buf,BUF_SIZE);
		strcpy_s(buf,str.c_str());
		retVal = send(sHost,buf,strlen(buf),0);
		if (SOCKET_ERROR == retVal)
		{
			printf("send failed!\n");
			closesocket(sHost);
			WSACleanup();
			return -1;
		}

		//接收服务器回传的数据
		retVal = recv(sHost,buf,sizeof(buf)+1,0);
		printf("Recv From Server:%s\n",buf);

		if (strcmp(buf, "quit") == 0)
		{
			printf("quit!\n");
			break;
		}
	}

	//-----------释放资源------------------
	closesocket(sHost);
	WSACleanup();

	system("pause");


	return 0;
}


 

Linux 下C++编程:gudulyn

阅读数 5

http://blog.csdn.net/gudulyn/

博文 来自: weixin_34166847

【Linux】 C++编程(vim)

阅读数 21

一,编译(compile)含义:用编译器(compile)将源代码生成二进制目标文件。在Window下为.obj。在Linux下为.o文件。要求:编译器要求,语法正确。编译器只检测程序语法和函数、变量是否被声明,函数并不许要被定义。编译语法:g++-cfile.cpp其中-c为compile生成file.o的目标文件二,链接(link)含义:将所有需要到函数所...

博文 来自: tianshuai11

初学linux c++编程

阅读数 822

习惯了window的编程环境,习惯了MicrosoftVS的方便使用,习惯了IDE的一键搞定,转到Linux环境,颇有些不适用。虽然Linux也有强大的IDE开发环境,如我比较喜欢的Eclipse,但是既然转到了Linux,就要去学习一下Linux的精华,看到周围同事的全命令行编程,一个字,酷,但是不能只是干瞪眼的只是羡慕,还是一个字,学。(一)学习编辑程序:Vim如同电脑新手学习打字一

博文 来自: xuh5156

Linux C++ socket 编程

阅读数 414

这里有一个封装的比较好的client和server端的cpp,是用于linuxc++的socket编程http://tldp.org/LDP/LG/issue74/tougher.html

博文 来自: baidu_36022292

【Linux】 C++编程(vim)

阅读数 23

一,编译(compile)含义:用编译器(compile)将源代码生成二进制目标文件。在Window下为.obj。在Linux下为.o文件。要求:编译器要求,语法正确。编译器只检测程序语法和函数、变量是否被声明,函数并不许要被定义。编译语法:g++-cfile.cpp其中-c为compile生成file.o的目标文件二,链接(link)含义:将所有需要到函数所...

博文 来自: iteye_9065
没有更多推荐了,返回首页