C++函数和'identifier not found'错误

C++ Functions and 'identifier not found' error

本文关键字:found 错误 not identifier C++ 函数      更新时间:2023-10-16

我是一个c++学习者。我试图编码一个基本的c++项目。这是基本的自动化系统。它有一个导航菜单

Choose an option :
   1 ) Add a new customer
   2 ) List all customers
   ...

将有一个nav变量,其中包含用户的选择。这是我的源代码:

#include <stdio.h>
#include <clocale>
int nav;    
void main()
{
    setlocale(LC_ALL,"turkish");
    navigasyon();
    switch (nav) // checking 'nav' variable which assigned in navigasyon()
    case "1" :
         printf("Now you are adding a new customer");
    break;
    case "2" :
         printf("Now you are listing all customers");
    break;
}
void navigasyon()
{
    printf("Choose an option n");
printf("1 ) Add a new customern");
printf("2 ) List all customersn");
scanf("%d", &nav); // assigning '`nav' variable
}

在不久,在main()中,navigasyon()将显示导航菜单,用户选择1或2,然后navigasyon()将其分配给nav。最后用开关柜检查nav

但是我得到'navigasyon': identifier not found错误

您应该在main之前声明navigasyon

在定义main之前使用navigasyon函数。您需要交换mainnavigasyon的位置,或者在main之前声明navigasyon

需要先声明函数

在你的#includes语句之后写这个

void navigasyon();

也可以将函数放在main函数之前。在c++中,函数必须在使用之前声明,除非它被放在main函数之前。

将" navigasyon "置于main.

c++要求在使用函数之前声明函数。这可以通过将整个函数放在用法之前或通过前向声明来实现,其中只有签名在前面。

您需要在文件开头声明navigasyon()函数,以便编译器在编译main()时知道它:

void navigasyon();

您需要在使用该方法之前声明它。在main代码前添加以下行:

static void navigasyon();

将navigason声明为仅局部(静态)函数。为了进一步使用,您应该将声明移动到。h文件中,删除静态文件,当然还要包含这个。h文件。