在结构中使用字符串

赫鲁尼·尼曼提
struct employee
{
    char name[20];
}emp;

void main()
{
    emp.name[20]="John";
    printf("%s\n",emp.name);
}

为什么这段代码没有输出?为什么不能直接初始化字符串数组?

用户2371524

第一:你的编译器应该警告你。如果您使用gcc,请尝试使用

gcc -std=c11 -Wall -Wextra -pedantic

看看。

问题只是错误的语法。你指定你的字符串文字到emp.name[20]这是21元emp.name这个元素甚至不存在,它的类型是char

你想要的是这样的:

emp.name = "John"; // <- INVALID!!

但这不起作用,因为不幸的是 C 不允许分配给数组。您可以使用该函数strcpy(字符串复制)来实现您想要的功能(包括string.h):

strcpy(emp.name, "John");

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在AppResources中使用字符串

来自分类Dev

在java中使用字符串

来自分类Dev

PHP在字符串中使用字符串

来自分类Dev

在C中使用字符串成员复制结构

来自分类Dev

使用字符串的控制流结构的问题

来自分类Dev

在字符串中使用字符代码

来自分类Dev

在Webpack中使用require('...')和变量以及在字符串中使用字符串

来自分类Dev

如何在C ++中使用字符串将文本文件保存到结构

来自分类Dev

在AWK中使用字符串变量打印列

来自分类Dev

在C中使用字符串数组

来自分类Dev

在PostgreSQL中使用字符串进行循环

来自分类Dev

在C中使用字符串进行多线程

来自分类Dev

strcmp()可以在C ++中使用字符串吗?

来自分类Dev

如何在RcppEigen中使用字符串变量

来自分类Dev

在库API中使用字符串vs类型

来自分类Dev

在Java中使用字符串格式打印列

来自分类Dev

在Switch语句中使用字符串

来自分类Dev

在Ruby中使用字符串拆分?

来自分类Dev

在不同功能中使用字符串名称

来自分类Dev

在子流程中使用字符串

来自分类Dev

在Tensorflow中使用字符串标签

来自分类Dev

如何在Swift中使用字符串获取

来自分类Dev

LINQ无法在Xamarin中使用字符串吗?

来自分类Dev

引用字符串以在命令行中使用

来自分类Dev

在dplyr中的函数中使用字符串

来自分类Dev

在R中使用字符串作为函数参数

来自分类Dev

在Android中的Java文件中使用字符串

来自分类Dev

在EF LINQ查询中使用字符串方法

来自分类Dev

在终端中使用字符串参数