小编SIF*_*IFE的帖子

GDB:如果变量等于值则中断

当一个变量等于我设置的某个值时,我喜欢让GDB设置一个断点,我试过这个例子:

#include <stdio.h>
main()
{ 
     int i = 0;
     for(i=0;i<7;++i)
        printf("%d\n", i);

     return 0;
}
Run Code Online (Sandbox Code Playgroud)

GDB的输出:

(gdb) break if ((int)i == 5)
No default breakpoint address now.
(gdb) run
Starting program: /home/SIFE/run 
0
1
2
3
4
5
6

Program exited normally.
(gdb)
Run Code Online (Sandbox Code Playgroud)

就像你看到的那样,GDB并没有提出任何突破点,这可能与GDB有关吗?

c gdb

79
推荐指数
3
解决办法
9万
查看次数

得到一堆十字架初始化错误

我从下载的示例中获取了这段代码:

bool ChatServer::event(QEvent * event)
{
    if(event->type() == QEvent::User)
    {
        UserEvent * ue = static_cast<UserEvent *>(event);
        switch(ue->userType)
        {
            case CR::ErrorEvent:
            case CR::LogEvent:
            {   
                TraceEvent * te = static_cast<TraceEvent *>(ue);
                if(te->userType == CR::ErrorEvent)
                {
                    error(te->msg);
                }
                else
                {
                    log(te->msg);
                }
            }
                break;
            default:
                return false;
        }
    }
    else
    {
        return QTcpServer::event(event);
    }
    return true;
}
Run Code Online (Sandbox Code Playgroud)

现在如果编译程序我得到这个错误:

g++ -c -pipe -O2 -Wall -W -DQT_NO_DEBUG -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/local/share/qt4/mkspecs/freebsd-g++ -I. -I/usr/local/include/qt4/QtCore -I/usr/local/include/qt4/QtNetwork -I/usr/local/include/qt4 -I. -I/usr/local/include/qt4 -I/usr/local/include -o chatserver.o chatserver.cpp
g++ -c -pipe -O2 …
Run Code Online (Sandbox Code Playgroud)

c++ initialization g++ switch-statement

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

在QDesigner中将小部件设置在中心

是否可以在QDesigner中设置对话框或窗口中心的小部件,比如我有一个包含3行编辑和标签的小部件,我想在窗口中心设置此小部件.

qt qt4 qt-creator qt-designer

14
推荐指数
3
解决办法
2万
查看次数

实现首先适合像算法

问题:我有3台机器,每台机器的时间限制为30毫秒,每台机器有3个区域,无法在那里执行任务.任务有P(优先级)和W(权重,这是在此设置中完成任务的时间),任务必须首先按优先级排序,从低到高依次为:

任务01 {6,2} // P/W = 3此任务最后执行(3)

任务02 {7,7} // P/W = 1此任务首先执行(1)

任务03 {4,2} // P/W = 2此任务执行第二(2)

现在,为了执行任务(我有6个),我必须检查所有3台机器,找到第一个适合任务,选择适合任务,它必须是3台机器中的最佳,例如:

机器01; | ----- 5 ---- 9 ------- 16-17--19-20 |

机器02:| ---- 4-5--7-8 --------- 17-18-- |

机器03:| ----- 5 --- 8--10 --- 13--15 --- 18-- |

(1)在机器02中执行任务02(我们寻找执行任务的P ms,以及启动任务的最短时间,因为机器01(从9毫秒开始)和02(从8毫秒开始)都有7毫秒空闲时间,机器02可以先启动任务然后机器01).

(2)在机器02中执行的任务03(我们寻找P ms来执行任务).

(3)在机器01中执行的任务01(我们寻找P ms来执行任务).

某些时间段被定义为关键时期,不能用于安排工作.这些时段(例如5-9,7-8)存储在专用结构中z_indispo.

bfeet结构用于存储任务开始和巫婆机器.

我在C中实现了大部分整个算法,但我的结果与预期不同:

#include <stdio.h>

typedef struct _z_indispo {
    int t1;
    int t2;
} z_indispo; 

typedef struct _machines {
    int t[20]; // array represent time …
Run Code Online (Sandbox Code Playgroud)

c algorithm job-scheduling

10
推荐指数
1
解决办法
1617
查看次数

强制MySQL只使用unix socket

我希望我的MySQL服务器只使用unix socket,并忽略TCP网络,所以我将这一行添加到我的配置中/etc/my.cnf:

skip-networking 
Run Code Online (Sandbox Code Playgroud)

netstat告诉我MySQL仍然使用TCP端口3306:

# netstat -tl | grep mys
tcp        0      0 *:mysql      *:*                         LISTEN 
Run Code Online (Sandbox Code Playgroud)

mysql unix-socket

6
推荐指数
1
解决办法
1万
查看次数

为QTableView设置可编辑列

我想在QTableView中设置一个可编辑列,到目前为止,我尝试子类化QTableView并重新实现Qt::ItemFlags flags(const QModelIndex & index) const,子类化QSqlQueryModel并重新实现Qt::ItemFlags flags(const QModelIndex & index) const,最后子类化QAbstractItemView,但这会出现编译器错误。

子类化 QTableView:

#include "exqtableview.h"

ExQTableView::ExQTableView(QWidget *parent) :
    QTableView(parent)
{
}

Qt::ItemFlags ExQTableView::flags(const QModelIndex & index) const
{
    if (!index.isValid())
        return Qt::ItemIsEnabled;
    if (index.column() == 2)
        return index.parent().flags() & ~Qt::ItemIsEditable;
}
Run Code Online (Sandbox Code Playgroud)

子类化 QSqlQueryModel

#include "exsqlquerymodel.h"

ExSqlQueryModel::ExSqlQueryModel(QObject *parent) :
    QSqlQueryModel(parent)
{
}

Qt::ItemFlags ExSqlQueryModel::flags( const QModelIndex &index) const
{
    Qt::ItemFlags flags = QSqlQueryModel::flags(index);
    if (index.column() == 2 )
        flags …
Run Code Online (Sandbox Code Playgroud)

qt4 mvvm

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

使用bootstrap将div的内容居中

我有这个页脚:

<div id="footer" class="navbar-bottom">
    <div class="navbar-inner">
    <div class="row">
        <div class="span12" style="text-align: center;">
        <ul class="menu-footer">
            <li><a href="#"><img src="images/fportfolio.png"><p class="merg-top">Portfolio</p></a></li>
            <li><a href="#"><img class="center" src="images/fabout.png"><p class="merg-top">About</p></a></li>
            <li><img width="160px" src="images/logo.png"></li>
            <li><a href="#"><img src="images/fclients.png"><p class="merg-top">Clients</p></a></li>
            <li><a href="#"><img src="images/fcontact.png"><p class="merg-top">Contact</p></a></li>
        </ul>
        </div>
    </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

每个文本和图像都完美地位于li元素内部,现在我喜欢ul元素位于div的中心,但它现在对齐到左边.

css twitter-bootstrap

2
推荐指数
1
解决办法
2万
查看次数

编译器实现中x ++和++ x之间的区别

我搜索了x ++ vs ++ x,我在这里找到了一个很好的答案,所以我决定看看gcc的汇编输出,看看x ++和++ x是如何实现的:

main(){int s = 0; ++ S; 返回0; }

编译示例:

gcc mul.c -masm = intel -o mul.asm

++ s的输出:

    .file   "mul.c"
    .intel_syntax
    .text
    .p2align 4,,15
.globl main
    .type   main, @function
main:
    lea %ecx, [%esp+4]
    and %esp, -16
    push    DWORD PTR [%ecx-4]
    push    %ebp
    mov %ebp, %esp
    push    %ecx
    sub %esp, 16
    mov DWORD PTR [%ebp-8], 0
    add DWORD PTR [%ebp-8], 1
    mov %eax, 0
    add %esp, 16
    pop %ecx
    pop %ebp …
Run Code Online (Sandbox Code Playgroud)

c compiler-construction gcc

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

如何使用 PHP 在 Blogger 中发布帖子?

我在如何在 Blogger 中发布帖子时遇到了麻烦,根据他们的文档,查询必须如下所示:

POST https://www.googleapis.com/blogger/v3/blogs/{blogId}/posts/
Authorization: {OAuth 2.0 token}
Content-Type: application/json

{
  "kind": "blogger#post",
  "blog": {
    "id": "{blogId}"
  },
  "title": "A new post",
  "content": "With <b>exciting</b> content..."
}
Run Code Online (Sandbox Code Playgroud)

就我而言,我总是收到“无效凭据”,但在插入帖子失败时我仍然可以获得博客信息。

Returned response:

{ "error": { "errors": [ { "domain": "global", "reason": "authError", "message": "Invalid Credentials", "locationType": "header", "location": "Authorization" } ], "code": 401, "message": "Invalid Credentials" } }
Run Code Online (Sandbox Code Playgroud)

用于插入帖子的代码:

$postTitle = 'post test';
$postContent = 'just another test.';
$url = 'https://www.googleapis.com/blogger/v3/blogs/'.$blogId.'/posts/';
$headerQuery = array();
$headerQuery[] = 'Authorization: …
Run Code Online (Sandbox Code Playgroud)

php curl blogger

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

为什么这段代码输出3

可能重复:
任何人都可以解释这些未定义的行为(i = i ++ + ++ i,i = i ++等...)

我发现这段代码,最初在这里:

#include <stdio.h>

int main()
    {
    int p = 0;
    p = p++ + ++p;
    printf("p=%d\n", p);

}
Run Code Online (Sandbox Code Playgroud)

我猜测输出将是2,但是当我编译代码并执行它时,输出为3,为什么?

c

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