Palavra-chave da linguagem C auto

1. Na linguagem c, a palavra-chave auto é usada para declarar uma variável como uma variável automática

  Variáveis ​​automáticas também são chamadas de variáveis ​​locais. Trate variáveis ​​não definidas em nenhuma classe, estrutura, enumeração, união e funções como variáveis ​​globais e variáveis ​​definidas em funções como variáveis ​​locais. Todas as variáveis ​​locais são automáticas por padrão e geralmente são omitidas.
  Quando auto declara variáveis ​​globais, ocorre um erro de compilação:

auto int i;
void main(void)
{
    
    
}

  Quando auto declara variáveis ​​locais, a compilação é normal:

void fun(auto int i)
{
    
    
	auto int j = i;
}
void main(void)
{
    
    
	auto int i = 1;
	fun(i);
}

2. Na linguagem c, apenas auto é usado para modificar variáveis, e o tipo de variável é inteiro por padrão

void main(void)
{
    
    
	double a = 1.2, b = 2.7;
	auto c = a + b;//c语言中,c = 3
}

3. Em c ++, a palavra-chave auto é um especificador de tipo

  O tipo da variável é inferido a partir do valor inicial da variável ou do tipo de dados envolvido na expressão. Ao programar, geralmente é necessário atribuir o valor de uma expressão a uma variável, o que requer que o tipo da expressão seja claramente conhecido ao declarar a variável. O novo padrão C ++ 11 introduz o especificador de tipo automático, permitindo ao compilador analisar o tipo de expressão . Como o compilador precisa inferir o tipo da variável ou expressão, a variável definida por auto deve ser inicializada. Na linguagem C, as variáveis ​​definidas por auto não podem ser inicializadas, porque as variáveis ​​são do tipo inteiro por padrão. Esta parte refere-se ao blog: Análise da palavra-chave auto em linguagem C e a palavra-chave auto em C ++

void main(void)
{
    
    
	double a = 1.2, b = 2.7;
	auto c = a + b; // c++中, c = 3.9
}

Tópico: Escreva um programa, leia uma string contendo sinais de pontuação e espaços e produza a parte restante da string após remover os sinais de pontuação e espaços

  Código-fonte C ++:

//编写一个程序,读入一个包含标点符号和空格的字符串,将标点符号和空格去除后输出字符串剩余的部分
#include <iostream>
#include <string>

using namespace std;
int main(void)
{
    
    
	/*src为源字符串即要操作的字符串,dest为目标字符串,存放操作结果*/
	string src, dest;
	getline(cin, src);            /*从输入中读取一行赋值给str*/
	for (auto c : src)            /*对str中的每个字符*/
	{
    
    
		if (!ispunct(c) && c != ' ')           /*如果该字符不是标点符号和空格*/
		{
    
    
			dest.push_back(c);     /*把该字符尾插到dest中*/
		}
	}
	cout << dest << endl;          /*输出dest中的内容*/
	system("pause");
	return 0;
}

  Exemplo:
Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/maple_2014/article/details/108478405
Recomendado
Clasificación