添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
我似乎不能成功定义一个链表。我试过 typedef struct { char *item; NODEPTR next; } *NODEPTR; 但是编译器报了错误信 息。难道在C语言中一个结构不能包含指向自己的指针吗? . . . . 怎样建立和理解非常复杂的声明?例如定义一个包含 N 个指向返 回指向字符的指针的函数的指针的数组? . . . . . . . . . . . . . . 函数只定义了一次, 调用了一次, 但编译器提示非法重定义了。 . . main() 的正确定义是什么? void main() 正确吗? . . . . . . . . . 对于没有初始化的变量的初始值可以作怎样的假定?如果一个全 局变量初始值为 “零”, 它可否作为 空指针 或浮点零? . . . . . . . 代码 int f() { char a[] = "Hello, world!";} 不能编译。 . . . . . . . 这样的初始化有什么 问题 ?char *p = malloc(10); 编译器提示 “非 法初始式” 云云。 . . . . . . . . . . . . . . . . . . . . . . . . . . . 以下的初始化有什么区别?char a[] = "string literal"; char *p = "string literal"; 当我向 p[i] 赋值的时候, 我的程序崩溃了。 . . . . 我总算弄清除函数指针的声明方法了, 但怎样才能初始化呢? 结构、联合和枚举 声明 struct x1 { ...}; 和 typedef struct { ...} x2; 有什么不同? . 为什么 struct x { ...}; x thestruct; 不对? . . . . . . . . . . . . . 一个结构可以包含指向自己的指针吗? . . . . . . . . . . . . . . . 在 C 语言中实现抽象数据类型什么方法最好? . . . . . . . . . . . 在 C 中是否有模拟继承等面向对象程序设计特性的好方法? . . . 我遇到这样声明结构的代码: struct name { int namelen; char namestr[1];}; 然后又使用一些内存分配技巧使 namestr 数组用起 来好像有多个元素。这样合法和可移植吗? . . . . . . . . . . . . 是否有自动比较结构的方法? . . . . . . . . . . . . . . . . . . . . 如何向接受结构参数的函数传入常数值? . . . . . . . . . . . . . . 怎样从/向数据文件读/写结构? . . . . . . . . . . . . . . . . . . . 我的编译器在结构中留下了空洞, 这导致空间浪费而且无法与外 部数据文件进行 ”二进制” 读写。能否关掉填充, 或者控制结构域 的对齐方式? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 为什么 sizeof 返回的值大于结构的期望值, 是不是尾部有填充? . . 如何确定域在结构中的字节偏移? . . . . . . . . . . . . . . . . . 怎样在运行时用名字访问结构中的域? . . . . . . . . . . . . . . . 程序运行正确, 但退出时却 “core dump”了,怎么回事? . . . . . 1.1 我该如何决定使用哪种整数类型? 1.2 为什么不精确定义标准类型的大小? 1.3 因为C语言没有精确定义类型的大小,所以我一般都用typedef定义int16和int32。然后根据实际的机器环境把它们定义为int、short、long等类型。这样看来,所有的 问题 都解决了,是吗? 1.4 新的64位机上的64位类型是什么样的? 1.5 这样的声明有什么 问题 ?char*p1,p2;我在使用p2的时候报错了。 1.6 我想声明一个指针,并为它分配一些空间,但却不行。这样的代码有什么 问题 ?char*p;*p=malloc(10);  1.7 怎样声明和定义全局变量和函数最好? 1.8 如何在C中实现不透明(抽象)数据类型?  1.9 如何生成“半全局变量”,就是那种只能被部分源文件中的部分函数访问的变量?  1.10 同一个静态(static)函数或变量的所有声明都必须包含static存储类型吗?  1.11 extern在函数声明中是什么意思? 1.12 关键字auto到底有什么用途? 类型定义(typedef)  1.13 对于用户定义类型,typedef和#define有什么区别? 1.14 我似乎不能成功定义一个链表。我试过typedefstruct{char*item;NODEPTRnext;}*NODEPTR;但是编译器报了错误信息。难道在C语言中结构不能包含指向自己的指针吗?  1.15 如何定义一对相互引用的结构?  1.16 Struct{ }x1;和typedefstruct{ }x2;这两个声明有什么区别?  1.17 “typedefint(*funcptr)();”是什么意思? const限定词  1.18 我有这样一组声明:typedefchar*charp;constcharpp;为什么是p而不是它指向的字符为const?  1.19 为什么不能像下面这样在初始式和数组维度值中使用const值?constintn=5;inta[n];  1.20 constchar*p、charconst*p和char*constp有什么区别?  复杂的声明  1.21 怎样建立和理解非常复杂的声明?例如定义一个包含N个指向返回指向字符的指针的函数的指针的数组? 1.22 如何声明返回指向同类型函数的指针的函数?我在设计一个状态机,用函数表示每种状态,每个函数都会返回一个指向下一个状态的函数的指针。可我找不到任何方法来声明这样的函数——感觉我需要一个返回指针的函数,返回的指针指向的又是返回指针的函数……,如此往复,以至无穷。  1.23 能否声明和传入数组大小一致的局部数组,或者由其他参数指定大小的参数数组?  1.24 我在一个文件中定义了一个extern数组,然后在另一个文件中使用,为什么sizeof取不到数组的大小?  声明 问题 1.25 函数只定义了一次,调用了一次,但编译器提示非法重声明了。  *1.26 main的正确定义是什么?voidmain正确吗?  1.27 我的编译器总在报函数原型不匹配的错误,可我觉得没什么 问题 。这是为什么?  1.28 文件中的第一个声明就报出奇怪的语法错误,可我看没什么 问题 。这是为什么?  1.29 为什么我的编译器不允许我定义大数组,如doublearray[256][256]?  1.30如何判断哪些标识符可以使用,哪些被保留了? 1.31 对于没有显式初始化的变量的初始值可以作怎样的假定?如果一个全局变量初始值为“零”,它可否作为 空指针 或浮点零?  1.32 下面的代码为什么不能编译?intf(){chara[]="Hello,world!";}  *1.33 下面的初始化有什么 问题 ?编译器提示“invalidinitializers”或其他信息。char*p=malloc(10);  1.34 chara[]="stringliteral";和char*p="stringliteral";初始化有什么区别?当我向p[i]赋值的时候,我的程序崩溃了。  1.35 chara{[3]}="abc";是否合法?  1.36 我总算弄清楚函数指针的声明方法了,但怎样才能初始化呢?  1.37 能够初始化联合吗?  第2章 结构、联合和枚举 2.1 structx1{ };和typedefstruct{ }x2;有什么不同? 2.2 这样的代码为什么不对?structx{ };xthestruct;  2.3 结构可以包含指向自己的指针吗?  2.4 在C语言中用什么方法实现抽象数据类型最好?  *2.5 在C语言中是否有模拟继承等面向对象程序设计特性的好方法? 4. 指出下面合法的标识符:(多选) A. 3ab B. int C. ABC D. a_3 E. sum.a F. #abc G. _stu2 H. abc f 答案:CDG 5. 指出下面哪些是保留字:(多选) A. char B. abc C. printf D. Int E. float F. define G. include H. PI 答案:AEFG 6. 指出下面哪些是合法的用户定义的标识符?(多选) A. P-S B. putchar C. double D. _908 E. *par F. sheep! G. wind H. x y 答案:BDG 7. C语言的基本类型哪些:(多选) A. 整型 B. 枚举型 C. 数组型 D. 指针型 E. 字符型 F. 构造型 G. 实形 H. 空类型 答案: ABEG 8. 这段程序中的常量有:(多选) #define PI 3.14 void main() int sum; sum = 10 + 15; printf ("sum=%d\n",sum); printf ("result is 25\n"); 这段程序中常量有: A. 10 B. sum C. 15 D. 25 E. main F. PI char str2[] = "World"; char *result = strcat_ptr(str1, str2); printf ("Result: %s\n", result); return ; 这个程序中,我们定义了一个指针函数 `strcat_ptr`,它接受两个参数,分别是目标字符串 `dest` 和源字符串 `src`。函数的作用是将 `src` 字符串连接到 `dest` 字符串的末尾,并返回连接后的字符串。 在函数内部,我们首先定义一个指针 `p`,它指向 `dest` 字符串的末尾。然后,我们使用两个 while 循环,将 `src` 字符串的每个字符依次复制到 `dest` 字符串的末尾。最后,我们在 `dest` 字符串的末尾添加一个空字符,表示字符串的结束。 在主函数中,我们定义了两个字符串 `str1` 和 `str2`,并将它们传递给 `strcat_ptr` 函数。函数返回连接后的字符串,并将其赋值给指针变量 `result`。最后,我们使用 ` printf ` 函数输出连接后的字符串。 希望这个回答能够帮助你! gami98: 你好,请问第一步解压就一直出现:tar: jre-8u251-linux-x64.tar.gz: Cannot open: No such file or directory tar: Error is not recoverable: exiting now 应该怎么处理呀?感谢! A*搜索算法(python) Vincent_1199: 提示aStar = Astar.Astar(mapTest, Astar.Node(Astar.Point(1,1)), Astar.Node(Astar.Point(8,18))) AttributeError: module 'Astar' has no attribute 'Astar',请问怎么办 A*搜索算法(python) 感谢大佬!!最终通过您的这个方法实现了我的需求!! A*搜索算法(python) @Wuqia: xrange()是python2.x里用的,在python3.x里写成range() linux下sed正则表达式匹配批量替换文件中的内容 Martin-Rayman: