C study notes[2]

文章目录

integer

  1. the format character %d in the printf funtion indicates to output with integer format In decimal form. if the integer bases 8 which is octal or bases 16 which is hexadecimal,you should use the %o or %x.we can create the prefix such as 0 or 0X when adding # to those format character.
c 复制代码
# include <stdio.h>
int main(void) {
	int x = 9;
	printf("%o,%#o,%d,%x,%#x",x,x,x,x,x);
}
  1. the char type is a fantastic data type which take up 8 bits ,to occupy one byte memory of computer for achieving some tasks such as representing as a small integer less than 256,a set of binary explaining a instruction, a character for ASCII,a byte's slice of datas from a file and so on.

  2. In C, non-printing characters (also called control characters) are characters that do not represent a written symbol but instead control formatting, transmission, or other functions.

  3. Common Non-Printing Characters in C

Escape Sequence ASCII Value Description
\a 0x07 Alert (bell)
\b 0x08 Backspace
\t 0x09 Horizontal tab
\n 0x0A Newline (line feed)
\v 0x0B Vertical tab
\f 0x0C Form feed (page break)
\r 0x0D Carriage return
\0 0x00 Null character (string terminator)
\\ 0x5C Backslash (printing, but escaped)
\' 0x27 Single quote
\" 0x22 Double quote
  • Hexadecimal : \x1B (escape character)
  • Octal : \033 (same escape character)
c 复制代码
printf("Hello\tWorld!\n");      // Uses tab and newline
printf("Alert: \a\n");          // Triggers a beep (if supported)
printf("Back\bspace\n");        // Prints "Backspace" after backspace
printf("Null terminator: \0\n"); // Stops string at \0
printf("Hex: \x41\n");  // Prints 'A' (ASCII 0x41)
printf("Octal: \101\n"); // Also prints 'A' (octal 101)
  1. _Bool is a Boolean data type introduced in the C99 standard to represent true/false values. It can store either 1 (true) or 0 (false).
c 复制代码
#include <stdio.h>
#include <stdbool.h> // For bool, true, false

int main() {
    _Bool isTrue = 1;   // Works, but not recommended (use bool instead)
    bool isFalse = false; // Preferred (via <stdbool.h>)
    
    printf("isTrue: %d\n", isTrue);   // Output: 1
    printf("isFalse: %d\n", isFalse); // Output: 0
    
    return 0;
}

input

  1. scanf function used to receive user's input with character format such as %s,%d and so on,as similar as format character parameter of printf function.
  • Common format specifiers for scanf:

    %d - integer

    %f - float

    %lf - double

    %c - single character

    %s - string (whitespace delimited)

    %x - hexadecimal integer

    %o - octal integer

c 复制代码
int age;
float height;
printf("Enter your age and height: ");
scanf("%d %f", &age, &height);

you also declare a char array ,50 bytes in size,for inputing a set of chars maximized 50 used in scanf function.

every char array substantially is a sequence consisted of a lot of chars,can be called as character string in C language,capacity of a char array is its length-1 because of ending with \0(Null character) .

c 复制代码
char name[50];
printf("Enter your name: ");
scanf("%49s", name);  // limit input to prevent buffer overflow

string "a" and char 'a' are different that "a" include Null and 'a' only occupy one byte.

  1. scanf return an integer indenfied the amount of reading chars sucessfully.
  2. The asterisk (*) in scanf has a special meaning - it's called an "assignment suppression character".
c 复制代码
int x;
scanf("%*d %d", &x);  // Reads but discards first integer, stores second in x

the format character flaged as * will be omitted to input.

  1. In printf, * is used for dynamic field width and precision specification.
c 复制代码
int width = 10;
int num = 42;
printf("%*d", width, num);  // Prints num in 10-character width
int precision = 3;
float pi = 3.14159;
printf("%.*f", precision, pi);  // Prints "3.142"
c 复制代码
int width = 8;
int precision = 2;
float value = 123.4567;
printf("%*.*f", width, precision, value);  // Prints "  123.46"

constant

  1. declare a constant can use # define constantname value ,for example, #define x 0.001.
  2. const is a keyword used to declare variables as read-only (constant).
c 复制代码
#include <stdio.h>

int main() {
    const int c = 10;  // 'c' is a constant integer
    // c = 20;  // ERROR: Cannot modify a const variable
    printf("c = %d\n", c);  // Output: c = 10
    return 0;
}
  1. Predefined Symbolic Constants,these come built-in with the C language or standard libraries:

    Standard Library Constants (from headers like <limits.h>, <float.h>, <math.h> etc.):

c 复制代码
  NULL (null pointer)

    EOF (end-of-file)

    BUFSIZ (standard buffer size)

    FLT_MAX (maximum float value)

    INT_MAX (maximum integer value)

references

  1. deepseek
相关推荐
java干货6 分钟前
为什么 “File 10“ 排在 “File 2“ 前面?解决文件名排序的终极算法:自然排序
开发语言·python·算法
_F_y6 分钟前
C语言重点知识总结(含KMP详细讲解)
c语言·开发语言
毕设源码-郭学长7 分钟前
【开题答辩全过程】以 基于python的二手房数据分析与可视化为例,包含答辩的问题和答案
开发语言·python·数据分析
无小道30 分钟前
Qt——常用控件
开发语言·qt
aini_lovee1 小时前
MATLAB基于小波技术的图像融合实现
开发语言·人工智能·matlab
郝学胜-神的一滴1 小时前
深入解析C/S模型下的TCP通信流程:从握手到挥手的技术之旅
linux·服务器·c语言·网络·网络协议·tcp/ip
R1nG8631 小时前
多线程安全设计 CANN Runtime关键数据结构的锁优化
开发语言·cann
初次见面我叫泰隆1 小时前
Qt——5、Qt系统相关
开发语言·qt·客户端开发
亓才孓1 小时前
[Class的应用]获取类的信息
java·开发语言
开开心心就好1 小时前
AI人声伴奏分离工具,离线提取伴奏K歌用
java·linux·开发语言·网络·人工智能·电脑·blender