C尝试区分通用指针

我试着打电话, g_io_scheduler_push_job(job_func, &param, NULL, G_PRIORITY_HIGH, generator_cancellable); 在我的C/gtk+应用程序中,在另一个线程中运行job_func()然后是主程序。 但是当我调用这个函数时有段错误,并且调试器说:** userdata尝试区分通用指针** job_func()代码是, gboolean job_func(GIOSchedulerJob *job, GCancellable *cancellable, gpointer user_data) { JobParam* job_param = (JobParam*)user_data; build(NULL, job_param->mw); return TRUE; } JobParam , typedef struct _JobParam { GtkWidget* widget; MainWin* mw; }JobParam; MainWin , typedef struct _MainWin { GtkWindow parent; GtkWidget* scroll; GtkWidget* box; GtkUIManager *uimanager; } MainWin; 并build […]

套接字数据损坏

我正在研究一个简单的套接字客户端,它向服务器发送一个简单的字母“p”,然后从服务器读取响应。 除了一个令人困惑的问题外,它正在全力以赴。 第一次读取套接字(它发生在循环中)时,数据会出现乱码和损坏,结果如“ÿýÿû”和“μÞv”。 第一次回复后收到的所有数据都很好且有效。 我用来接收的代码是: int n; char buffer[256]; bzero(buffer,256); strcpy(buffer, “p”); n = write(manSock,buffer,256); if (n < 0) { error("ERROR writing to management server"); } bzero(buffer,256); n = read(manSock,buffer,256); if (n < 0) { error("ERROR reading from management server"); } return buffer; manSock是套接字文件描述符。 有关为何发生这种情况的任何想法?

在一个数组中,如何检查其内容编号中的任何两个是否可以加到某个值x?

可以使用什么命令来检查数组中任何两个数字的总和是否合计为x的某个值。

写入具有不同文件名的单独文件

这就是我想要实现的目标: 假设用户输入是: 生成随机实例…… 输入电路板尺寸MAX_X MAX_Y:100 200 输入点数NUM_PT:10 输入要生成的随机实例数:7 你的程序将生成总共7个实例,写入7个单独的文件“instance10_j.txt”,对于j = 1,2,3,…每个实例都有矩形区域[0; 100] X [0; 200],并且有10分。 在矩形区域内均匀地随机生成点的坐标。 并且您的程序确保每个实例中没有重复点。 如果程序无法生成这些文件,请打印出错误并退出。 所有这些文件都保存在执行命令的当前目录中,程序将打印到屏幕上: instance10_1.txt生成 instance10_2.txt生成 instance10_3.txt生成 instance10_4.txt生成 instance10_5.txt生成 instance10_6.txt生成 instance10_7.txt生成…完成! 这是我到目前为止所做的: int writetofile(max_X, max_Y, numpt, random_inst); int main(int argc, char *argv[]) { FILE *fp; int max_x, max_y, num_pt, rand_inst; int *x_coordinate, *y_coordinate; int inputfile = 0, outputfile = 0; […]

初始化从指针生成整数而没有强制转换

我刚刚开始学习如何编程,我遇到了这样的错误:“初始化从指针生成整数而没有强制转换[默认启用]”有什么问题? // This program pairs three kids with their favorite superhero #include #include main() { char Kid1[12]; // Kid1 can hold an 11-character name // Kid2 will be 7 characters (Maddie plus null 0) char Kid2[] = “Maddie”; // Kid3 is also 7 characters, but specifically defined char Kid3[7] = “Andrew”; // Hero1 will be […]

使用时间函数的链接列表打印错误

打印时间戳时程序崩溃。 我相信错误位于函数void flightRec_PrflightRecData(flightRecRead * thisFlight)中,它旨在做三件事: 声明时间结构的飞行时间,飞行时间是POSIX格式。 Localtime将POSIX时间转换为人类可读的时间。 第四个说明符使用asctime打印转换时间,该时间以Www Mmm dd hh:mm:ss yyyy格式打印。 错误是tb!= NULL并显示指定asctime的其他信息。 我做了什么来排除故障: 检查时间标题 检查指针和地址 关闭了弃用 检查格式说明符 任何帮助表示赞赏。 #include #include #include #include typedef struct flightRec_struct { // declare a struct to match the format of the binary data char FlightNum[7]; char OriginAirportCode[5]; char DestAirportCode[5]; int timestamp; } flightRec; typedef struct flightRecRead_struct { // […]

如何在c函数中动态malloc内存?

我想调用这样的函数: char* Seg(char* input, char **segs, int* tags) 实际上input是真正的输入, segs tags是返回,现在返回是错误消息。 我的程序是这样的: #include char* Seg(char* input, char **segs, int* tags) { // dynamic malloc the memory here int count = strlen(input); // this count is according to input for (int i = 0; i < count; i++) { segs[i] = "abc"; } for (int i […]

C程序中的非法初始化

我试图在Turbo C中运行此代码并在第9行进行非法初始化我做错了什么? #include #include void main() { int names[] = {23,23,34}; int *nam[] = { names, names+1 , names +2}; char *temp; clrscr(); printf(“%u” , (nam)); getch(); }

在我的C程序中使用scanf而不是fgets和fput?

#include #include int isPalindrome( char *str, int length ) { if ( length < 1 ) { return 1; /* no more chars to compare, its a palindrome */ } if ( str[0] == str[length-1] ) /* Are the two ends same? */ { return isPalindrome( str+1, length-2 ); /* continue checking */ } else […]

lua函数的警报消息

我有以下代码: lua_getglobal(L, “lgd”); lua_getfield(L, -1, “value_pos_x”); cr->value_pos_x = lua_tointeger(L, -1); if (!lua_isinteger(L, -1)) printf(“value_pos_x allows only numbers;”); lua_getfield(L, -2, “value_pos_y”); cr->value_pos_y = lua_tointeger(L, -1); if (!lua_isinteger(L, -1)) printf(“value_pos_y allows only numbers;”); lua_getfield(L, -3, “time”); cr->time = lua_tointeger(L, -1); if (!lua_isinteger(L, -1)) printf(“time allows only numbers;”); 代码完美无缺。 我想知道的问题是,是否可以只保留一条消息并且适用于每个函数,例如: lua_getglobal(L, “lgd”); lua_getfield(L, -1, “value_pos_x”); cr->value_pos_x = lua_tointeger(L, […]