[Lenguaje C - primera comprensión del lenguaje C (2)]


prefacio

Continúe con el contenido de aprendizaje del artículo anterior. Este artículo sigue siendo una vista previa rápida del contenido básico del lenguaje C.

4. Cadena + carácter de escape + comentario

4.1 Cuerdas

Las comillas simples se deben usar para definir un solo carácter, y solo un carácter puede estar contenido en la comilla simple, y %c se puede usar para el carácter de salida.

char ch1 = 'abc';//错误的
char ch2 = 'c';//正确
//输出字符用%c
printf("%c\n", ch1);
printf("%c\n", ch2);

Presione ctrl+F5 para ejecutar el programa y el resultado es el siguiente:
inserte la descripción de la imagen aquí
Encontramos que el resultado del canal 1 no es el abc imaginado.
ch2 es correcto. Entonces, las comillas simples solo pueden definir un carácter.
Varios caracteres juntos son cadenas. Por ejemplo, para definir la cadena abc, debe estar entre comillas dobles. arr[] representa una matriz y no se pueden escribir números entre paréntesis. La cadena de salida está representada por %s. También se puede escribir en el formulario de comillas simples a continuación.

char arr1[] = "bit";

inserte la descripción de la imagen aquí

Tenga en cuenta que al aprender cadenas:
el final de una cadena es un carácter de escape \0. Al calcular la longitud de la cadena, \0 es la marca final y no se cuenta como el contenido de la cadena. La entrada de cadena también se puede escribir entre comillas simples de la siguiente manera, como salida arr3[ ] y arr4[ ]:

char arr3[] = {
    
     'b','i','t' };
char arr4[] = {
    
     'b','i','t','\0'};

Al comparar los resultados de salida, se encuentra que los resultados de salida de arr1[ ] y arr4[ ] son ​​los mismos, pero arr3[ ] está distorsionado.
inserte la descripción de la imagen aquí
Para analizar el motivo, es necesario observar los cambios de las variables de cadena arr1[ ], arr3[ ] y arr4[ ] en el programa.
En la interfaz del programa, presione F10 en el teclado , el programa ingresa a la depuración, la interfaz mostrará la depuración, haga clic en depuración - ventana - monitoreo - monitoreo 1 , vea la figura a continuación

inserte la descripción de la imagen aquí
Ingrese arr1, arr3, arr4 en la ventana de monitoreo a continuación, luego presione Enter o haga clic en el espacio en blanco. La flecha amarilla representa dónde se está ejecutando y depurando el programa.
inserte la descripción de la imagen aquí

Luego presione F11, el programa inicia la depuración de un solo paso y las variables de cadena son aleatorias antes de que se inicialicen.
inserte la descripción de la imagen aquí
Continúe presionando F11 , después de la inicialización, verá que se han asignado los valores de las tres variables.
inserte la descripción de la imagen aquí
Haga clic en el pequeño triángulo junto a él, se mostrará el contenido específico de la variable y se sorprenderá al descubrir que parece que los tres son bits de cadena de entrada, pero los resultados son muy diferentes. Tanto arr1 como arr4 terminan con el carácter '\0' No en arr3.
inserte la descripción de la imagen aquí
arr1 usa comillas dobles para ingresar la cadena y el final contiene el carácter final '\0' de forma predeterminada; la entrada de arr3 no está disponible; arr4 se agrega activamente. Genere simultáneamente tres cadenas y sus longitudes:
dado que arr1 y arr4 tienen el carácter final '\0' al final , la cadena termina, el valor de salida es un bit y la longitud es de 3 caracteres.
arr3 no tiene el carácter final '\0' al final , por lo que en la memoria habrá algunos valores aleatorios al final de los cuales no sé cuál es, por lo que la salida es distorsionada y el la longitud de 15 es incorrecta, y no sé qué hay detrás de la cola.
inserte la descripción de la imagen aquí
inserte la descripción de la imagen aquí
Por lo tanto, se recomienda utilizar comillas dobles al ingresar cadenas.

4.1 Caracteres de escape

Para imprimir un directorio en la pantalla: c:\code\test.c

int main()
{
    
    
	printf("c:\code\test.c\n");
	return 0;
}

inserte la descripción de la imagen aquí
Se debe cambiar a la siguiente forma

printf("c:\\code\test.c\\n");
int main()
{
    
    
	printf("%c\n", '\'');//在屏幕上打印一个单引号'
	printf("%s\n", "\"");//在屏幕上打印一个字符串,字符串的内容是一个双引号“
	return 0;
}

Ejecute el siguiente programa para generar la longitud de la cadena

#include <stdio.h>
int main()
{
    
    
printf("%d\n", strlen("abcdef"));
// \62被解析成一个转义字符
printf("%d\n", strlen("c:\test\628\test.c"));
return 0;
}

inserte la descripción de la imagen aquí
Aquí, de acuerdo con el método de monitoreo de variables mencionado anteriormente, puede observar claramente el cambio de la variable de cadena arr, que contiene 14 caracteres, la longitud es 14 y se incluye el carácter final '\0' al final, que es oculto y no cuenta como contenido de caracteres, solo significa el final de la cadena.
inserte la descripción de la imagen aquí

5. Notas

  • El código innecesario en el código se puede eliminar directamente o comentar
  • Parte del código en el código es más difícil de entender, puede agregar un texto de comentario
int add(int x, int y)
{
    
    
	return x - y;
}
/*C语言风格的注释
int add(int x, int y)
{
	return x - y;
}*/

int main()
{
    
    
	//C++注释风格
	//int a = 10;
	//调用add函数,完成加法
	printf("%d\n", add(1,2));

	return 0;
}

6. Seleccione declaración

Si estudia mucho, obtenga una buena oferta al momento de reclutar y alcanzará la cima de su vida.
Si no estudias, la graduación es igual al desempleo, y te vas a casa y vendes batatas.
¡Esta es la elección!

int main()
{
    
    
	int coding = 0;
	printf("你会去敲代码吗?\n");
	printf("选择1 or 0)");
	scanf("%d", &coding);
	if(coding == 1)
	{
    
    
		prinf("坚持,你会有好offer\n");
	}
	else
	{
    
    
		printf("放弃,回家卖红薯\n");
	}
	return 0;
}

7, declaración de bucle

La sentencia ejecutada repetidamente en el lenguaje C es un bucle, que tiene tres formas:

  • mientras declaración
  • para declaración
  • hacer ... mientras declaración

El siguiente es un ejemplo de un bucle while, y los otros dos bucles se actualizarán más adelante.

int main()
{
    
    
	printf("加入大厂\n");
	int line = 0;
	while(line<=20000)
	{
    
    
		line++;
		printf("我要继续努力敲代码\n");
	}
	if(line>20000)
		printf("好offer\n");
	return 0;
}

8. Función

A continuación se muestra una suma simple de dos enteros de entrada y se imprime. El método de escritura antes de aprender la función:

int main()
{
    
    
	int num1 = 0;
	int num2 = 0;
	int sum = 0;
	printf("输入两个操作数:>");
	scanf("%d %d", &num1, &num2);//输入函数
	sum = num1 + num2;
	printf("sum = %d\n", sum);
	return 0;
}

Después de escribir la declaración de suma como una función, la característica de la función es simplificar el código y reutilizar el código:

int Add(int x, int y)//加法的函数定义
{
    
    
	int z = x+y;
	return z;
}
int main()
{
    
    
	int num1 = 0;
	int num2 = 0;
	int sum = 0;
	printf("输入两个操作数:>");
	scanf("%d %d", &num1, &num2);
	sum = Add(num1, num2);//调用函数
	printf("sum = %d\n", sum);
	return 0;
}

9. matriz

El lenguaje C estipula que cada elemento de la matriz tiene un subíndice, y el subíndice comienza desde 0. Se puede acceder a las matrices subscribiendo.
Lo siguiente define una matriz arr1[10] que contiene 10 elementos, todos inicializados en 0. El rango de subíndices es 0-9.

int arr1[10] = {
    
    0};//定义了一个包含10个元数的数组,初始化都为0
///如果数组10个元素,下标的范围是0-9

inserte la descripción de la imagen aquí

int main()
{
    
    
	
	int i = 0;
	
	int arr[10] = {
    
    1,2,3,4,5,6,7,8,9,10};
	for(i=0; i<10; i++)//for循环打印数组中的10个元数
	{
    
    
		printf("%d ", arr[i]);
	}
	printf("\n");
	return 0;
}

Resumir

Aún no ha terminado el contenido básico del lenguaje C. Este artículo pretende principalmente presentar la función de depuración simple de VS2017 y monitorear los cambios de variables en la ventana, lo cual es muy útil para el aprendizaje posterior de programas complejos.

F10 programa ingresa a la interfaz de depuración
F11 depuración de un solo paso
shift+f11 para finalizar la depuración

Supongo que te gusta

Origin blog.csdn.net/taibudong1991/article/details/123708243
Recomendado
Clasificación