小编gc *_*c .的帖子

如何以编程方式获取Linux的窗口和系统的分辨率?

我试图在Linux系统上获得屏幕的分辨率以及特定窗口(程序正在运行的程序)的分辨率.我不需要修改分辨率,我只需要当前的值.据我所知,我们可以在Windows上调用一些系统函数,我们怎样才能在Linux上执行,最好是使用C/C++语言?提前致谢.

更新:实际上,我不需要做GUI,虽然我知道Qt和GTK +可以做到,但我不愿意包含一个外部库来获得分辨率.

c++ linux screen-resolution

10
推荐指数
3
解决办法
8630
查看次数

使用cin两次的问题

这是代码:

string str;
cin>>str;
cout<<"first input:"<<str<<endl;
getline(cin, str);
cout<<"line input:"<<str<<endl;
Run Code Online (Sandbox Code Playgroud)

结果是getline从不暂停用户输入,因此第二个输出始终为空.

在花了一些时间之后,我意识到在第一次调用"cin >> str"之后,似乎'\n'仍然存储在cin中(使用cin.peek()来检查),它立即结束了getline.解决方案是在第一次使用和第二次使用之间再添加一行: cin.ignore(numeric_limits::max(), '\n');

但是,我仍然不明白,为什么在第一次通话后'\n'留在那里?什么是梦想和运营商>>真的吗?

c++ cin

8
推荐指数
2
解决办法
7485
查看次数

滑过矢量的好处?

我需要的只是一个动态增长的数组.我不需要随机访问,我总是插入到最后并从头到尾阅读它.

slist似乎是第一选择,因为它提供了我所需要的足够的东西.但是,我不知道通过使用slist而不是vector来获得什么好处.此外,我读到的关于STL的一些材料说,"向量通常是访问元素和从序列末尾添加或删除元素的最有效时间".因此,我的问题是:对于我的需求,slist真的比矢量更好吗?提前致谢.

c++ stl list vector

4
推荐指数
1
解决办法
3222
查看次数

如何在基于Debian的系统上以编程方式获取IP地址?

我正在尝试检索IP Address程序中的本地计算机.操作系统是Ubuntu 8.10.我尝试使用gethostname()gethostbyname()检索IP Address.我收到的答案是127.0.1.1.我了解到它似乎是一Debian件事: 这里链接的文件解释了这个想法.

我的/etc/hosts文件内容是:

127.0.0.1 localhost
127.0.1.1 mymachine

在这种情况下,有没有其他方式以编程方式(更喜欢C或C++)获取IP地址而不修改机器上的系统文件?

c debian ip-address

3
推荐指数
1
解决办法
9693
查看次数

socket()和recv()在套接字通信中的行为

以下是设置:

Server         Client
 |                |
accept         connect
 |                |
 v                |
send msg1->       | 
 |                |
 v                v
recv    <-     send
 |                |
 v                v
send msg2->    recv
 |                |
 v                v
               close

这是我的问题:
1.客户端在关闭之前实际收到msg1,为什么会这样?
2.发送msg2正常返回.由于客户端在收到msg1后关闭,为什么发送msg2成功?

PS我正在使用TCP的流套接字.

sockets send recv

3
推荐指数
1
解决办法
2204
查看次数

标签 统计

c++ ×3

c ×1

cin ×1

debian ×1

ip-address ×1

linux ×1

list ×1

recv ×1

screen-resolution ×1

send ×1

sockets ×1

stl ×1

vector ×1