小编Jos*_*ell的帖子

为什么指针在这段代码中起作用而不是正常变量?

在我的下面的代码中,我得到了以下警告:

在函数'on_btn_Convert_clicked'中:|

警告:赋值在没有强制转换的情况下从指针生成整数[默认情况下启用] |

警告:传递'gtk_label_set_text'的参数2使得整数指针没有强制转换[默认情况下启用]

|| ===构建完成:0个错误,2个警告(0分钟,1秒(秒))=== |

如果我按原样运行程序,它将打开GUI但有问题的按钮会在按下时导致分段错误并使程序崩溃.

#include <stdlib.h>
#include <stdio.h>
//include gtk headers
#include <gtk/gtk.h>

//define pointer variable names
GtkWidget  *plblFileName;
GtkWidget  *pbtnConvert;
GtkWidget  *pbtnFileChooser;


//prototype functions
char on_btn_Convert_clicked();

char on_btn_Convert_clicked()
{
   //define variables
   char hello;

   hello = "hello!";

   gtk_label_set_text(GTK_LABEL(plblFileName), hello);
   return 0;
}

//start main loop
int main( int    argc,
      char **argv )
{
    GtkBuilder *builder;
    GtkWidget  *window;
    GError     *error = NULL;

    //Init GTK+
    gtk_init( &argc, &argv );

    //Create new GtkBuilder object
    builder = gtk_builder_new();
    //Load …
Run Code Online (Sandbox Code Playgroud)

c string variables pointers string-literals

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

标签 统计

c ×1

pointers ×1

string ×1

string-literals ×1

variables ×1