“const char*”类型的值不能用于初始化“char”类型的实体,这句话不明白什么意思

lingfeng892 lingfeng892 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我写了一个顺序表的程序,结果有3个警告,都是标题那句话
这个程序包括两部分 SeqList.h 和 main.c ,SeqList.h 部分正确,就在 main.c 的 stu[3] 部分出了问题

#include <stdio.h>
#include <stdlib.h>

typedef struct Student
{
char num[7]; //学号
char name[10]; //姓名
char sex[3]; //性别
short age; //年龄
}Student;

typedef Student DataType;
#include "SeqList.h"

void main()
{
int i;
SeqList* myList = NULL;
//DataType* List = (DataType*)malloc(myList->maxSize * sizeof(DataType));

DataType stu[3] = {{2000001,"张 三","男",20},
{2000002,"李 四","男",21},
{2000003,"王 五","女",22}};

myList = Initiate(100); //初始化一个顺序表

for(i = 0; i < 3; i++) //插入数据
{
Insert(stu[i],i,myList);
}

for(i = 0; i < 3; i++)
{
DataType item;
item = GetData(i,myList);
printf(" %c %c %c %d\n",item.num,item.name,item.sex,item.age);
}
printf("\n\n删除数据后:\n\n");

Delete(3,myList);

for(i = 0; i < 3; i++)
{
DataType item;
item = GetData(i,myList);
printf(" %c %c %c %d\n",item.num,item.name,item.sex,item.age);
}
printf("\n");
}


这个程序如果把 main.c 中的 DataType 定义为 int 并插入整型数就不会有错了。

这个程序是由http://topic.csdn.net/u/20120420/23/d02fde6e-ffd1-468c-9f0a-62a0c6d8eb49.html这个程序改进的,SeqList.h 部分改对了。
...全文

相关推荐

const char*转LPCWSTR 字符串转换

一种windows下const char*转LPCWSTR的方法演示

明天继续

const用法 const int *a; int * const a;

const char* pCh; // 指向字符串常量的指针; 表示pch是一个指针,指向字符串常量。根据需要还可以指向另一个字符串。 但字符串不能被改变。 char* const pCh; // 指向字符串的常量指针; 表示pch是一个字符串常指针,该指针只能指向该字符串,不可以在让他指向另一字符串。但该字符串的内容可以变化。 const int a; //a是个整型常量 int const a; //同上 const int *a; //a是一个指向整型常量的指针(整型常量不可修改,但指针a可以) int * const a; //a是一个指向整型数的常量指针(整型常量可修改,但指针a不可以) int const *a const; //a是一个指向整型常量的常量指针(两者都不可以修改)

dy506390367

C++类的静态成员初始化详细讲解

通常静态数据成员在类声明中声明,在包含类方法的文件中初始化.初始化时使用作用域操作符来指出静态成员所属的类.但如果静态成员是整型或是枚举型const,则可以在类声明中初始化

weixin_38586186

(const) char 转CString 详解(字符串类型转换详解,不断补充)

(const) char 转CString 详解(字符串类型转换详解,不断补充)

zhongzhi0507

std::string、char*、const char*转托管byte数组或托管字符串String

std::string、char*、const char*转托管byte数组或托管字符串String

K0000000r
评论 12
收藏 已收藏
分享
返回顶部
lingfeng892
C语言 70,039 成员 243,237 内容