关于C语言中单双引号的问题

代码
#include<stdio.h>

int main()
{
    if ( "{" =='{' )
        printf("True
");
    else
        printf("Flase
");
    
    return 0;
 }

编译:

test.c: 在函数‘main’中:

test.c:12:14: 警告: 比较指针和整数 [默认启用]


执行结果:

Flase


单引号表示一个字符,字符在本质上是小整型值,对应于该字符在编译器采用的字符集中的序列值,一般我们的编译器采用的是ASCII字符集.在这种情况下,'a'与97的含义是一致的.

双引号表示一个字符串,代表的是一个指向无名数组起始字符的指针.

注:用双引号引起的字符串会在末尾添加一个'',故字符串长度+1.


参考链接


#学习笔记,如有谬误,敬请指正。#
原文地址:https://www.cnblogs.com/happyhacking/p/4147595.html