小编Rya*_*yan的帖子

Shell命令以">"开头

我最近遇到了一个看起来像这样的shell命令:"> outfile <infile cat",它似乎在功能上等同于"cat infile> outfile".就此而言,一般形式似乎是"> outfile <infile命令arg1 ... argN"变为"命令arg1 ... argN infile> outfile".

无论如何,我想知道是否有人可以详细说明领先的">"如何实现这种效果,以及是否有任何实际用途.

bash shell

7
推荐指数
1
解决办法
177
查看次数

变量未在此范围内声明?

我在几个变量的几个方法中得到了这个错误(所有这些都是向量):

error: ‘parent’ was not declared in this scope
Run Code Online (Sandbox Code Playgroud)

我已经尝试将我的方法实现包装在"namespace DisjointSubsets {...}"中,但这会导致其他问题.它似乎只对矢量这样做,我尝试在cpp文件的开头添加一个"#include vector",它没有改变任何东西.

这是头文件:

#ifndef UNIVERSE 
#define UNIVERSE 
#include <vector>
class DisjointSubsets { 
    public :
        DisjointSubsets ( unsigned numberElements = 5 ) ;
        unsigned findDS ( unsigned ) ;
        bool unionDS ( unsigned , unsigned ) ;
    private :
        vector<unsigned> parent ;
        vector<unsigned> rank ;
        unsigned size ;
} ;
#include "DisjointSubsets.cpp"
#endif
Run Code Online (Sandbox Code Playgroud)

以下是我在cpp文件中编写的方法之一(没有#includes)的示例:

unsigned DisjointSubsets::findDS(unsigned index) {
    return parent[index];
}
Run Code Online (Sandbox Code Playgroud)

(将方法更改为不起作用,但仍然说明会导致问题的那种行.以防万一其他人在工作中遇到此问题.)

c++

0
推荐指数
1
解决办法
792
查看次数

第一个DGRAM没有IP

我正在研究的UDP服务器有一个奇怪的问题.收到的第一个udp数据包没有关于数据包源的信息.后续的udp数据包似乎都很正常,并正确显示接收数据包的IP地址.我不知道是什么导致了这种行为,可能是一些愚蠢的错误,或者是一些不起眼的错误.我在运行Debian的Linux机器上使用.

fd_set master;
fd_set read_fds;
int fdmax;
int i;
int bytes_sent;
int bytes_recv;
socklen_t addr_len;
struct sockaddr_storage their_addr;

// provides users information needed to connect
serv_info *server_info;
server_info = (serv_info*) serv_config;

// Create UDP listener socket
int info_sock = createDGRAMSocket(NULL, server_info->port, 1);
char buffer[1024];
int len;
int send_response;

FD_SET(info_sock, &master);
fdmax = info_sock;
bytes_recv = recvfrom(i, buffer, sizeof(buffer), 0, (struct sockaddr *)&their_addr, &addr_len);
printf("Info started \n");
while (running) {
    read_fds = master;
    select(fdmax+1, &read_fds, NULL, NULL, NULL);
    for (i = …
Run Code Online (Sandbox Code Playgroud)

c sockets

0
推荐指数
1
解决办法
60
查看次数

标签 统计

bash ×1

c ×1

c++ ×1

shell ×1

sockets ×1