小编sam*_*rat的帖子

如何在C中使用逆

[怎么用〜运算符]

我有一个结构说Alpha.我知道里面的元素的值Alpha(比如说a)可以是- 0或者1我希望相同结构的其他元素取Alpha.a的逆值.例如:

if Alpha.a = 1
then Alpha.b = 0
Run Code Online (Sandbox Code Playgroud)

反之亦然

我试过了:

Alpha.b = ~ (Alpha.a)
Run Code Online (Sandbox Code Playgroud)

但不幸的是它不工作-当Alpha.a1,Alpha.b被设置为254

有任何想法吗?

感谢致敬,

SamPrat

c bitwise-operators

19
推荐指数
3
解决办法
8万
查看次数

对SSL_library_init和SSL_load_error_strings的未定义引用

我正在实现一个OpenSSL代码并且已经包含了必需的头文件,但我仍然遇到像*这样的错误

未定义的引用 SSL_library_init

我想这是一个链接错误而不是编译错误.

我正在使用slickeditor在Linux机箱中实现它.

c openssl undefined-reference

13
推荐指数
3
解决办法
4万
查看次数

g_main_loop_run阻止Qthread并且不允许停止视频

我为gstreamer创建了一个单独的类来传输视频.
该类使用moveToThread()在单独的线程上运行.
我正在使用Qt5.5进行开发.
当我在主线程上发出startcommand时,Qthread启动并且gstreamer用于g_main_loop_run流式传输视频.这绝对没问题.但不知何故g_main_loop_run阻止线程,当我发出信号从主线程停止视频时,它不会在gstreamer类中执行插槽.

有人可以建议我如何解决这个问题?我可以用其他g_main_loop_r命令替换un或者可以使用g_main_loop_quit( gloop ); 用另一种方式.

void StreamingVideo::slotStartStream() // this slot called on start of thread from main thread
{

    if( !isElementsLinked() )
    {
       qDebug() << " we are emitting in dummy server ";
        //emit sigFailed( "elementsFailed" ); // WILL CONNECT IT WITH MAIN GUI ONXCE CODE IS FINISHED
        return;
    }

    gst_bus_add_watch( bus, busCall, gloop );
    gst_object_unref( bus );

    //proper adding to pipe
    gst_bin_add_many( GST_BIN( pipeline ), source, capsFilter, conv, …
Run Code Online (Sandbox Code Playgroud)

c++ qt multithreading gstreamer qthread

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

C - array [i] ++ vs array [i ++]中的数组增量类型

我想知道array[i]++和之间的区别是什么array[i++],其中数组是一个int array[10]

c arrays

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

使用指针显示数组内容

我对如何使用指针显示数组感到困惑。我可以使用 for 循环轻松地使用数组来完成此操作,但我有兴趣了解如何通过指针使用,并且我不知道如何计算数组的起点和终点。

下面是示例程序

 void printArray(int *ptr);            
{         
    //for statement to print values using array             
    for( ptr!=NULL; ptr++) // i know this doesn't work         
    printf("%d", *ptr);        
}         

int main()    
{    
    int array[6] = {2,4,6,8,10};     
    printArray(array);    
    return 0;     
}
Run Code Online (Sandbox Code Playgroud)

c pointers

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

加速C++练习11-6

卡在11章练习11-6的擦除功能中.我已经销毁了对象但我不知道如何使用分配器库中的释放来返回空间.

请保释我 PS:它不是作业,但我在家里练习

下面是来自Accelerated C++的代码,然后是我的修改后的擦除功能.谢谢`

template <class T> class Vec
{
public:
    typedef T* iterator;
    typedef const T* const_iterator;
    typedef size_t size_type;
    typedef T value_type;
    typedef T& reference;
    typedef const T& const_reference;

    Vec() { create(); }
    explicit Vec(size_type n, const T& t = T()) { create(n, t); }
    Vec(const Vec& v) { create(v.begin(), v.end()); }
    Vec& operator=(const Vec&);
    ~Vec() { uncreate(); }

    T& operator[](size_type i) { return data[i]; }
    const T& operator[](size_type i ) const { return data[i]; }

    void …
Run Code Online (Sandbox Code Playgroud)

c++ stl

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

Qt中MFC等效的SendMessage

在QT中移植VS2010项目.

我想,我对之前的帖子不太清楚,所以我在这里再解释一下.

问题是..我有很多子Qdialog窗口,当用户点击生成一些消息.我希望这些消息在我的主应用程序窗口的QTablewidget上.
现在正如一些成员所建议的,我应该看看VS2010中的事情是如何完成的,并尝试在QT中复制相同内容.所以这是我的设计..请让我知道你的建议/批评.

1)vs 2010 - >在主应用程序窗口中

MESSAGE_MAP
Run Code Online (Sandbox Code Playgroud)

我们有

ON_MESSAGE( WM_NOTICE, OnAddMessage )
Run Code Online (Sandbox Code Playgroud)
  • WM_NOTICE = WM_USER + 1;

在QT中做同样的事情我需要信号和插槽.所以有点像

connect( sender , SIGNAL(QtSingleApplication::messageReceived ( const QString &message )  ) , this , SLOT ( on_add_message( const QString & message ) );
Run Code Online (Sandbox Code Playgroud)

现在我该替换什么呢

  • '发件人'?在我的情况下谁将成为发件人?
  • SIGNAL(QtSingleApplication :: messageReceived)是对的吗?
  • 插槽 - 这里没有问题..我可以实现该代码,我将在排序顺序中将消息放在QTable widegt中.

2)现在,如果我查看在VC++中开发的现有项目的内部QDialog窗口源代码,它们就像是

void Message_information::add( const SMS& message )
{
//SMS is a  structure  and fields are SYSTEMTIME, Enum , CString
 CCriticalSection critical_section;
CSingleLock   lock( &critical_section, true );
messages_.insert( message ); …
Run Code Online (Sandbox Code Playgroud)

qt mfc sendmessage

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

二叉树中的递归函数解释

我正在阅读二叉树教程.
而且我在使用递归函数方面略有困难.比方说,我需要计算树中的节点数

int countNodes( TreeNode *root )    
{   
       // Count the nodes in the binary tree to which  
       // root points, and return the answer.  
    if ( root == NULL )  
       return 0;  // The tree is empty.  It contains no nodes.  
    else
   {  
       int count = 1;   // Start by counting the root.  
       count += countNodes(root->left);  // Add the number of nodes   
                                        //     in the left subtree.   
       count += countNodes(root->right); // Add the number of nodes   
                                        //    in the …
Run Code Online (Sandbox Code Playgroud)

c c++ binary-tree

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

DLL包装器和DLL之间的区别

我不知道什么是DLL包装器.有人可以解释一下
1)什么是DLL包装器?
2)它与DLL有何不同?
3)如何使用它?

感谢致敬,

c++ windows dll

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

添加长值显示不同的o/p

我在添加长值示例时遇到问题

 typedef unsigned short  UINT16;

   UINT16* flash_dest_ptr;  // this is equal to in hexa 0XFF910000

   UINT16 data_length ; // hex =  0x000002AA &  dec = 682

  //now when I add  

  UINT16 *memory_loc_ver = flash_dest_ptr + data_length ;

  dbug_printf( DBUG_ERROR | DBUG_NAVD, " ADD hex =0x%08X\n\r",memory_loc_ver   );
Run Code Online (Sandbox Code Playgroud)

实际O/p = 0xFF910554

// shouldn't o/p be FF9102AA ?
Run Code Online (Sandbox Code Playgroud)

c c++ embedded

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