#include <stdio.h>
#include <stdlib.h>
#include <string.h>typedef struct STUDENT
{int  ID;     char Name[64];     char Handle[32];
} STUDENT_INFO;STUDENT_INFO person;int main( void )
{person. Name[] = "jason"; //错误1person.Name = "jason"; //错误2return 1;
}

错误1:“错误:expected expression before ‘]’ tok”

原因:C语言只有在定义字符数组的时候才能用“=”来初始化变量,其它情况下是不能直接用“=”来为字符数组赋值的。

错误2:“错误:赋值时类型不兼容”

原因:结构体中数组成员Name表示数组名,是一个指针,具有常量特性,表示数组存储空间的开始地址,而C语言中不能对常量赋值。

解决办法:

字符串有三种赋值方法:

a、声明字符串时直接赋值; char a[10] = “huchentao”;

b、用scanf函数给字符串输入值; scanf("%s",person.Name);

c、用strcpy函数给字符串赋值,这种方法最为常用 strcpy(person.Name, “huchentao”);

struct 结构体中字符串数组赋值的问题相关推荐

  1. C语言 如何给结构体中的数组赋值

    说明: 在建立socke通信的t过程中,我想将所有变量都封装在一个结构体中,但是其中 IP地址需要数组保存,无法直接赋值: 偶然间看到了处理方式 示例 #include <stdio.h> ...

  2. C语言结构体中字符串赋值

    struct student { char name[20]; }; #include <stdio.h> main() { struct student s1; s1.name = &q ...

  3. 【VS开发】【编程开发】【C/C++开发】结构体中的数组与指针的内存分配情况说明...

    [VS开发][编程开发][C/C++开发]结构体中的数组与指针的内存分配情况说明 标签:[VS开发] [编程开发] 主要是疑惑在结构体定义的数组的内存空间与指针动态分配的内存空间,在地址上连续性.以及 ...

  4. JavaScript中字符串数组赋值失败,不是每个字符串,却是字符。

    我的处女作<Canvas系列教程>在我的Github上正在连载更新,希望能得到您的关注和支持,让我有更多的动力进行创作. 教程介绍.教程目录等能在README里查阅. 传送门:https: ...

  5. c语言结构体定义字符串数组,C语言,结构体中字符串的声明(采用字符指针还是字符数组)...

    结构体中,字符串选项是用字符数组表示好,还是用字符指针表示好? typedef struct person{ char *name; int age; char sex[6]; }: 该结构体中nam ...

  6. C语言高级编程:结构体中定义数组的“妙用”

    1. 说明 1)相同类型结构体变量可以直接赋值 2)在结构体中定义一个数组,可以用赋值语句拷贝整个数组,这也是数组间赋值的一个间接实现方式 3)在结构体中定义一个数组,可以传值调用的方法把它传递给函数 ...

  7. c语言中指针数组赋值字符串,C语言—用结构体指针给数组赋值(结构体指针指向字符串,给字符串赋值)...

    数组定义: char acBuf[sizeof(TRANS_HEAD_S) + sizeof(USER_HEAD_S) + 4] = {0}; 结构体定义: typedef struct { int ...

  8. matlab向结构体中的数组自动赋值_matlab之结构体数组struct

    以下内容来自于:https://blog.csdn.net/u010999396/article/details/54413615/ 要在MALTAB中实现比较复杂的编程,就不能不用struct类型. ...

  9. C语言—用结构体指针给数组赋值(结构体指针指向字符串,给字符串赋值)

    数组定义: char acBuf[sizeof(TRANS_HEAD_S) + sizeof(USER_HEAD_S) + 4] = {0}; 结构体定义: typedef struct {int i ...

最新文章

  1. 大咖云集!航天智慧物流创意组-技术培训第三期
  2. TiKV 源码解析系列文章(二)raft-rs proposal 示例情景分析
  3. 会话创建过程-创建Executor
  4. linux xlib函数手册,Xlib 学习笔记
  5. OpenStack tokens id获取测试
  6. LeetCode MySQL 1084. 销售分析III
  7. apollo local 模式_「架构」 - 配置中心 Apollo基本使用
  8. 华为综合测评是什么_喝水不用等待,温度随心控随时喝到热水,测评华为智选恒温电水壶...
  9. Linux之diff命令
  10. 文字垂直居中(HTML、CSS)
  11. 深度学习自学(十二):关键点数据集处理-300VW
  12. 怎么隐藏splitcontainer分界线
  13. 百度测试开发面试题整理
  14. 2022软考高项-知识点速记更新版(顺口溜)
  15. tinymce vue 部分工具不显示_vue项目中使用tinymce编辑器的步骤详解
  16. 苹果个人开发者账号审核
  17. 第三方包的安装及管理
  18. linux ps 命令大全
  19. 让Atmega8A-PU 支持外部晶振的熔丝设置
  20. WinForm中使用Win10 蓝牙Ble Sdk

热门文章

  1. Spring Boot 2.0 配置图文教程第 2 章 Spring Boot 配置## 书信息 demo.book.name=[Spring Boot 2.x Core Action] demo.b
  2. 全能UI设计师到底需要具备哪些能力呢?
  3. socket编程之accept()函数
  4. Integer 和 int
  5. 2023第十三届“中兴捧月”全球精英挑战赛今日正式启动
  6. gitlab展示CHANGELOG
  7. linux把u盘只读文件,完美解决linux下U盘文件只读的问题
  8. flutter CustomPainter 简单绘制 三角形 多边形
  9. 压缩感知算法_CEALeti研发出基于压缩感知的CMOS图像传感器
  10. Java线程池设置多少线程合适