当前位置:首页 » 编程语言 » c语言elemtype

c语言elemtype

发布时间: 2022-03-30 23:15:52

1. c语言elemtype

你是说的数据结构吧,elemtype只是一个别名,你要把自己要用的类型定义为elemtype才行。比如我的数据本身的类型是整型的,就这样写

typedefintelemtype;
//下面就可以统一写
elemtypea,b;
//相当于inta,b;
//这样的好处是可以适用于任何类型,只要在用的时候,再定义一次就行了

2. 关于c语言数据结构的头文件和Elemtype类的一些问题

1.
<stdio.h>一般写C语言程序都要加这个头文件,因为它包含scanf()、printf()等控制输入和输出的函数
<time.h>包含的主要是和时间相关的函数
<string.h>主要包含用来拷贝或比较字符串的函数
<stdlib.h>主要包含这几个函数:malloc()、calloc()、realloc()、free()、system()、atoi()、atol()、rand()、srand()、exit()

这是比较常用到的头文件

2.
typedef struct{
SElemtype *base;
SElemtype *top
int stacksize;
}SqStack;
以上为声明一个结构体,并用SqStack作为这个结构体名,结构体即为我们自己定义的数据类型。
其中selemtype也是一个自定义的结构体名,具体代表什么还要看具体的代码。

for(p=str;*p;p++)估计是写错了
如果前面没有定义 char p;
那么这个循环语句应该写成
for(char p=str;*p;p++);
p可以在for语句中定义,但是定义的p只能作用于这条for语句之内。

3. C语言elemtype

我理解你说的意思是不是想让elemtype可以替换任意一种类型?
如果是的话,这种东西叫做模板,它是C++的内容,不在C语言的范畴内。

具体用法是:
template <typename elemtype>
typedef struct{
elemtype *elem;
int length;
int listsize;
}sqlist;

之后声明变量时要赋予elemtype一个已知的类型,比如int。
struct sqlist<int> a;
对于a这里面的elemtype就变成了int。
不过这是C++的内容,C里面不能用。

如果不用模板,而必须在C语言里用的话,有两种方法。
1. 之前声明它
typedef int elemtype;
2. 之前预编译
#define elemtype int

4. C++中ElemType &e和ElemType* e 一个意思吗

您好,这个要看函数要实现的功能而定,比如void insert(int i,ElemType &e)函数从名字上看其作用就是将整数 i 插入ElemType链表 e 中,函数调用中对e的值的改变必须在函数外生效,所以应该用第二种形式 void insert(int i,ElemType &e)。
如果要求函数中对实参值的改变不影响函数外的值,则用第一种形式void insert(int i,ElemType e)
void insert(int i,ElemType e)中参数e是值传递,调用insert函数返回后实参的值不会改变。
而void insert(int i,ElemType &e)中e传递的引用,如果insert函数中改变了e的值,相应的实参值也会改变。
比如下面的程序

#include <stdio.h>
#include <stdlib.h>
typedef int ElemType;
void insert(int i ,ElemType& e)
{
e=45;
}

main()

{
int e=3;
insert(0,e);
printf("after call insert e=%d",e);
//system("pause");
}
最后打印出来的是e=45,而将void insert(int i ,ElemType& e)改为void insert(int i ,ElemType e)最后打印出来的就是e的原始值e=3

5. c语言问题 typedef int elemtype和#define elemtype int的区别

前面一种会识别elemeype为一种数据类型,可以定义elemtype a;
而后面的只是对int 定义了一个宏,在编译时会将使用elemtype的地方替换成int,
这样使用没什么区别,
不过不推荐,如果是想作为类型的话,还是推荐是用typedef;

6. C语言中方法参数列表ElemType &e和ElemType*e一样吗

一样,都是指e的地址

7. c语言typedef struct {ElemType *elem}Sqlist; Sqlist

应该是La.elem[0],或La.*elem

8. C语言中,ElemType 是什么数据类型

在C语言数据结构中,关于数据元素的类型定义均用“ ElemType e;”来表示,其中e是表示数据元素的变量,而ElemType则是它的类型,ElemType的含义就是“数据元素的类型”,是一个抽象的概念,是表示我们所要使用的数据元素应有的类型。

ElemType是数据结构上为了说明问题而用的一个词。它是element type(“元素的类型”)的简化体。

因为数据结构是讨论抽象的数据结构和算法,一种结构中元素的类型不一定是整型、字符型、浮点型或者用户自定义类型,为了不重复说明,使用过程用 “elemtype” 代表所有可能的数据类型,简单明了的概括整体。

在算法中,除特别说明外,规定ElemType的默认是int型。

拓展资料:

Elem Type的使用方法:

在定义结构体array的时候有这样一段:

typedef struct
{
ElemType data[maxsize];
int length;
}array;

使用:typedef int ElemType;//定义ElemType为int类型
你想让它是什么类型自己用typedef重定义就行。
也可以用模板表示,类似template<class T>里面的T。

9. C语言elemtype,其中elemtype不是关键字,那么如果我要让这个语句在C程序中能执行,应该怎么写

我理解你说的意思是不是想让elemtype可以替换任意一种类型? 如果是的话,这种东西叫做模板,它是C++的内容,不在C语言的范畴内。 具体用法是: template <typename elemtype> typedef struct{ elemtype *elem; int length; int listsize; }sqlist; 之后声明变量时要赋予elemtype一个已知的类型,比如int。 struct sqlist<int> a; 对于a这里面的elemtype就变成了int。 不过这是C++的内容,C里面不能用。 如果不用模板,而必须在C语言里用的话,有两种方法。 1. 之前声明它 typedef int elemtype; 2. 之前预编译它 #define elemtype int

热点内容
抗震柱加密区 发布:2025-01-17 03:03:06 浏览:134
幼儿园源码php 发布:2025-01-17 02:41:45 浏览:401
win引导Linux 发布:2025-01-17 02:36:49 浏览:263
ftp是传输类协议吗 发布:2025-01-17 02:36:47 浏览:311
查看电视配置下载什么软件 发布:2025-01-17 02:36:41 浏览:159
宝马x330i比28i多哪些配置 发布:2025-01-17 02:35:59 浏览:573
服务器运维安全云帮手 发布:2025-01-17 02:35:48 浏览:72
c应用编程 发布:2025-01-17 02:35:16 浏览:941
ios清除app缓存数据免费 发布:2025-01-17 02:34:33 浏览:375
微信企业号上传文件 发布:2025-01-17 02:10:28 浏览:64