C语言基础面试题(一)

const关键字的作用

1.使其具有不可改变的性质,增加代码可读性。

2.const修饰普通变量

//以下两个是一个意思
const int a = 10;  //定义常量a 不可修改
int const b = 10;

3.const修饰指针

// 指针指向的内容不可更改,但是指针的指向可以更改
char c = 'A';
char const *ch = &c;
const char *ch = &c;
char d = 'B';
ch = &d;    //可以修改  *ch = 'B';

//指针指向不可更改  内容可改
int x = 15;
int* const a = &x;
*a = 16;    //*a=16 x=16

//指针指向的内容不可修改 指向也不可以
const int* const y = &x;

优先级问题

图片说明

    int x = 1 << 2 / 2;    //先是除再是左移
    int a;
    a = (5,6,7);    //a=7
    // a = 5,6,7   //a=5 逗号优先级最低 a直接赋值5
    int nums[6] = {11,2,3,4,5,6};
    int *b = nums;
    printf("x=%d a=%d\n", x, a);  //x=2  a=7  
    int c = ++*b;  // *(b++) == *b++
    printf("c=%d *b=%d\n", c, *b);     //c=12 *b=12

unsigned

以下代码是什么样的?

#include <stdio.h>

int main(int argc, char *argv[])
{ 
    unsigned int i;
    for(i=9; i>=0; i--){
        printf("%d\n", i);    # 输出未知参数 以为它是正数,根本停不下来
    }
    return 0;
} 

如果i>0,那么它就是正常输出, 9 8 7 6 5 4 3 2 1。

#C##面试题目#
全部评论
感谢大神分享
2
送花
回复
分享
发布于 2022-10-11 15:46 河南

相关推荐

12 42 评论
分享
牛客网
牛客企业服务