如何在常量中增加字符?

时间:2015-12-14 23:28:40

标签: c char

这里只是一个示例代码:

$date = new \Carbon($p->created_at)->diffForHumans();

当我执行时,我收到一条错误消息,指出常量"中有太多字符。我如何解决此问题并允许将多个字符分配给" a"?

2 个答案:

答案 0 :(得分:1)

JointJSDiagramStore.js ... componentDidMount() { var el = document.getElementById(this.props.placeHolder); document.addEventListener("DOMContentLoaded", function(elt){ return function(){JointJSDiagramStore.buildDiagram(elt)}; }(el), false); JointJSDiagramStore.addChangeListener(this._onChange); } ... render() { return (<div id={this.props.placeHolder}/>); } ... 中您应该在单引号中定义一个字符。

C

a = 'w'; 内的所有内容都被视为字符数组。它包含后跟终止字符"的字符。

答案 1 :(得分:1)

"w"是一个字符数组,它被转换为指向数组第一个元素的指针作为assign操作符的thr操作数。

它被分配给char,因此在典型环境中它将成为毫无意义的值。

尝试

#include <stdio.h>
int main(void) {
    int a;
    a = 'w';
    printf("%c", a);
    return 0;
}

#include <stdio.h>
int main(void) {
    char* a;
    a = "w";
    printf("%s", a);
    return 0;
}

注意:

  • 您应该使用标准int main(void)代替main()
  • 除非有必要,否则不应使用全局变量。
  • 字符常量在C中为int%cprintf()接受int值。 (char会自动转换为int以获取可变长度参数)
  • getchar();已删除。终端软件可用于执行程序并查看结果。