c89

    0热度

    1回答

    我试图验证文件中的实际内容中的行,并退出一行中有两个空行的情况。这可以做到吗? 此代码导致fgetc()没有捕获双回车符/新行。 代码是来自C89项目的代码片段,因此在片段上方进行了声明。 if ((file = fopen(fileName,"r")) == NULL) { free(fileName); exit(1); } while (c != EOF) {

    3热度

    2回答

    在全新的编译警告,我遇到了下面的代码: char *strcpy(char *dest, char *src) { unsigned int i; while(dest[i] = src[i])//assignment in condition i++; return dest; } 代码的基础功能应该是美好的,但编译器警告说,assignme

    10热度

    2回答

    看来我无法找到“EiC”代表什么。 它已被用作解释器,类似于“Clang”的语义前端IDE,但稍微老一点。 它是什么意思,为什么我找不到它的任何参考?

    12热度

    2回答

    我正在尝试在测试严格的 C90一致性时使用gcc标志的组合。根据之前的帖子:GCC options for strictest C code?,我应该只需要一个--std = c90。 但这里是我的尝试: $ cat t.c #include <stdint.h> /* added in C99 */ int main() { uint64_t t; return 0;

    0热度

    2回答

    我无法理解在下面的情形的gcc -pedantic输出: $ gcc -pedantic parse.c -lpopt parse.c: In function ‘main’: parse.c:19:7: warning: initializer element is not computable at load time { "bps", 'b', POPT_ARG_INT, &

    -3热度

    1回答

    我尝试编写一个数独求解器 在solveSudoku中调用getPossibleElements之后,我总是得到分段错误。 如果我删除这一行,错误不会出现。 我的代码 #include <stdio.h> #include <stdlib.h> #include <string.h> #define SUDOKU_X 8 #define SUDOKU_Y 8 #define MAX_FIL

    2热度

    1回答

    我正在编程一个服务器端客户端程序。 在服务器上我通过这个数据结构的阵列管理客户端: struct Client { struct sockaddr_in addr; /*...*/ }; struct Client CLIENTS[MAX_CLI]; 当我收到来自客户端的第一个数据包通过我UDP插座 struct sockaddr_in addr_cli; me

    0热度

    2回答

    所以,我很好奇人们如何通过rand_r命令在多个线程中获得随机值。如果我使用时间(NULL)作为种子,那么每个人都会以萨姆种子结束,因为线程创建得如此接近。所有动作都基于随机种子,因此所有线程在我的程序的其余部分保持相同。如何获得[使用RAND_R(* int seed)]在所有线程中有差异的随机数? 在此先感谢。

    0热度

    2回答

    创建GET_TIME()函数,我有这个简单的功能: char* get_time() { char *buffer = malloc(sizeof(char)*10); /* HOW TO FREE IT ? */ time_t rawtime; struct tm * timeinfo; time(&rawtime); timeinfo =

    5热度

    2回答

    说我有一个编译单元file1.c中,该声明文件范围的变量,像这样: int my_variable = 12; 然后,在另一个编译单元file2.c中,我创建该extern声明变量,但其声明为const: extern const int my_variable; 这将汇编和GCC做工精细,用-Wall -Wextra -ansi -pedantic。但是,C89标准规定对于两种符合要求的