精华内容
下载资源
问答
  • 在使用AD运行Ultra Librarian脚本UL_Import.pas时,低版本的Altium Designer可能会遇到错误:Undeclared identifier:GetCurrentProductBuild。 这时,点击OK,再点击停止按钮。 使用{}将出现错误的地方注释掉,...
  • 主要介绍了MySQL 中 Identifier Case Sensitivity,需要的朋友可以参考下
  • PEiD(PE Identifier)是一款著名的查壳工具,其功能强大,几乎可以侦测出所有的壳,其数量已超过470 种PE 文档 的加壳类型和签名。
  • 报错误error C2065: '_beginthreadex' :undeclared identifier
  • estree-util-is-identifier-name 检查是否可以作为标识符名称。 安装 此包仅适用于 ESM:需要 Node 12+ 才能使用它,并且必须使用import ed 而不是require d。 : npm install estree-util-is-identifier-name ...
  • 哈希标识符 从 code.google.com/p/hash-identifier 自动导出 错误导出。 这个项目与我无关。 如果事实证明它给任何人带来不便,将删除。
  • NULL 博文链接:https://weigang-gao.iteye.com/blog/2262118
  • 水果蔬菜标识符 构建设置 # install dependencies $ yarn install # serve with hot reload at localhost:3000 $ yarn dev
  • 生命科学标识符(LSID)规范是生命科学领域信息资源的全球唯一识别方案。 它基于Internet标准,例如DNS,URN,HTTP,RDF,SOAP,WSDL和Web服务。
  • In this paper, an identifier-based adaptive neural dynamic surface control (IANDSC) is proposed for the uncertain DC-DC buck converter system with input constraint. Based on the analysis of the effect...
  • Hash-identifier

    2019-03-03 17:24:32
    Kali下自动hash类型鉴别脚本,亦可用于其他Linux发行版。 将脚本拷贝到 /usr/bin/ 下使用。
  • File Format Identifier 1.4

    2016-11-15 12:53:26
    File Format Identifier 1.4
  • 大成天下-数据安全实验室(DSW LABS) 出品 File Format Identifier(超级巡警病毒分析工具是一款辅助进行病毒分析的工具,它包括各种文件格式识别功能,使用超级巡警的格式识别引擎,集查壳、虚拟机脱壳、PE文件编辑、...
  • eth-hash-to-cid 将以太坊哈希转换为CID(Content IDentifier)的实用程序
  • In this article, we will explore QUOTED_IDENTIFIER behavior, default value, and comparison with a different value. Set options at connection level control query behavior in SQL Server. The query m...

    In this article, we will explore QUOTED_IDENTIFIER behavior, default value, and comparison with a different value. Set options at connection level control query behavior in SQL Server. The query might behave differently with different set options and their values.

    在本文中,我们将探讨QUOTED_IDENTIFIER行为,默认值以及与其他值的比较。 在连接级别上控制SQL Server中的查询行为的选项。 使用不同的设置选项及其值,查询的行为可能有所不同。

    介绍 (Introduction)

    Most of the developers use SET QUOTED_IDENTIFIER ON/OFF option in a stored procedure and user-defined functions. If you have not used it, SQL Server automatically adds this while scripting out the objects. This article explains the configuration and its benefits.

    大多数开发人员在存储过程和用户​​定义的函数中使用SET QUOTED_IDENTIFIER ON / OFF选项。 如果您尚未使用它,则SQL Server在编写对象脚本时会自动添加它。 本文介绍了配置及其好处。

    Let’s create a stored procedure with the following script:

    让我们使用以下脚本创建一个存储过程:

    CREATE PROCEDURE [dbo].[SQLTest]
    AS
        BEGIN
            SELECT 'Rajendra';
        END;
    

    In SSMS’s Object Explorer, right-click on the stored procedure and generate the stored procedure script (Script stored procedure as -> Create To -> New Query Editor Window):

    在SSMS的对象资源管理器中,右键单击存储过程并生成存储过程脚本(脚本存储过程为->创建至->新建查询编辑器窗口):

    Script stored procedure

    It generates the script in the new query window of SSMS. In the generated script, we can see an option SET QUOTED_IDENTIFIER ON. We have not added any such argument while creating the stored procedure. You can review the stored procedure script again for verification:

    它在SSMS的新查询窗口中生成脚本。 在生成的脚本中,我们可以看到一个选项SET QUOTED_IDENTIFIER ON 。 创建存储过程时,我们没有添加任何此类参数。 您可以再次查看存储过程脚本以进行验证:

    SSMS Script

    You are probably asking yourself why SSMS adds these options while generating a script for an object?

    您可能会问自己,为什么SSMS在为对象生成脚本时添加这些选项?

    Let’s understand the QUOTED_IDENTIFIER option in SQL Server in the next section.

    在下一节中,我们将了解SQL Server中的QUOTED_IDENTIFIER选项。

    设置QUOTED_IDENTIFIER (SET QUOTED_IDENTIFIER)

    We use single or double quotes in the script. Suppose we want to store employees’ name in a SQL table. The employee name might include a single quote in the name as well.

    我们在脚本中使用单引号或双引号。 假设我们要在SQL表中存储员工的姓名。 员工名称中也可能包含单引号。

    Let’s say customer name is O’Brien, if we try to insert this name in a table, we get the following error message:

    假设客户名称为O'Brien,如果我们尝试将此名称插入表中,则会收到以下错误消息:

    Insert into [Employee]
    Values(
     'Joe',
     "O'Brien",
     'UK')
    

    Error message:

    错误信息:

    207, Level 16, State 1, Line 3 Invalid column name ‘O’Brien’.

    207,级别16,状态1,第3行无效的列名'O'Brien'。

    We can execute the query as shown below, and it inserts record successfully in the table:

    我们可以执行如下所示的查询,并将查询成功插入到表中:

    SET QUOTED_IDENTIFIER OFF
        Insert into [Employee]
        Values(
         'Joe',
         "O'Brien",
         'UK')
    

    We can use single quotes as well to insert the data.

    我们也可以使用单引号插入数据。

    QUOTED_IDENTIFIER controls the behavior of SQL Server handling double-quotes.

    QUOTED_IDENTIFIER控制SQL Server处理双引号的行为。

    Look at the following example with different values of QUOTED_IDENTIFIER:

    请看下面的示例,使用不同的QUOTED_IDENTIFIER值:

    示例1:SET QUOTED_IDENTIFIER OFF (Example 1: SET QUOTED_IDENTIFIER OFF)

    SET QUOTED_IDENTIFIER OFF
    GO
    SELECT "Rajendra"
    GO
    

    It gives the output Rajendra:

    它给出输出Rajendra

    output

    示例2:SET QUOTED_IDENTIFIER ON (Example 2: SET QUOTED_IDENTIFIER ON)

    Let’s turn this option ON and execute the query.

    让我们将此选项打开并执行查询。

    SET QUOTED_IDENTIFIER ON
    GO
    SELECT "Rajendra"
    GO
    

    We get an error message stating invalid column name:

    我们收到一条错误消息,指出无效的列名:

    Invalid column error
    • SET QUOTED_IDENTIFIER OFF: If this setting is off, SQL Server treats the value inside the double quotes as a string. We can use any string in the double quotes, and SQL Server does not check for rules such as reserved keyword
    • SET QUOTED_IDENTIFIER OFF:如果关闭此设置,则SQL Server将双引号内的值视为字符串。 我们可以在双引号中使用任何字符串,并且SQL Server不会检查诸如保留关键字之类的规则
    • SET QUOTED_IDENTIFIER ON: With this option, SQL Server treats values inside double-quotes as an identifier. It is the default setting in SQL Server. In the above example, we see that it treats the string SET QUOTED_IDENTIFIER ON:使用此选项,SQL Server将双引号内的值视为标识符。 它是SQL Server中的默认设置。 在上面的示例中,我们看到它对待字符串Rajendra. It checks for the column name and gives an error message Rajendra 。 它检查列名并给出错误消息

    We cannot use a reserved keyword for object names. For example, function is a reserved keyword, and we cannot create any existing object with this:

    我们不能使用保留关键字作为对象名称。 例如, function是一个保留关键字,并且我们不能用此创建任何现有对象:

    CREATE TABLE Function(id INT);
    

    It gives the following error message:

    它给出以下错误信息:

    Incorrect syntax error

    As highlighted earlier, we can use reserved keywords in the object name once we enable the QUOTED_IDENTIFIER ON and SQL Server does not check the string for any existing rules.

    如前所述,一旦启用QUOTED_IDENTIFIER ON并且SQL Server不检查任何现有规则的字符串,就可以在对象名称中使用保留关键字。

    In the following query, we use the reserved keyword function as an object:

    在以下查询中,我们使用reserved关键字函数作为对象:

    SET QUOTED_IDENTIFIER ON; 
    GO
    CREATE TABLE dbo."Function"
    (id   INT, 
     Name VARCHAR(20)
    );
    GO
    INSERT INTO dbo."Function"
    (id, 
     Name 
    )
    VALUES
    (1, 
     'Rajendra'
    );
    GO
    

    Once the object is created, we can access the object without specifying the QUOTED_IDENTIFIER option. Both queries execute successfully:

    创建对象后,无需指定QUOTED_IDENTIFIER选项就可以访问该对象。 这两个查询成功执行:

    SELECT id,name FROM dbo."Function"
    SELECT [id], 
           [Name]
    FROM [DemoSQL].[dbo].[Function];
    

    Output message

    Let’s view the behavior of single quotes along with QUOTED_IDENTIFIER ON and OFF:

    让我们看一下单引号以及QUOTED_IDENTIFIER ON和OFF的行为:

    SET QUOTED_IDENTIFIER ON;
    GO
    SELECT 'Rajendra';
    

    As you can see in the following screenshot, it treats string inside single quotes as literal. In the first select statement, it prints the string inside a single quote.

    如下面的屏幕快照所示,它将单引号内的字符串视为文字。 在第一个select语句中,它在单引号内打印字符串。

    Output of an query

    With the QUOTED_IDENTIFIER OFF, it gives a similar output. This setting does not impact SQL Server behavior for the single quotes:

    在QUOTED_IDENTIFIER为OFF的情况下,将提供类似的输出。 此设置不影响单引号SQL Server行为:

    SET QUOTED_IDENTIFIER OFF
    GO
    SELECT 'Rajendra'
    

    Output of an query

    In the following example, let’s observe a single and double quote behavior with QUOTED_IDENTIFIER:

    在下面的示例中,让我们观察一下QUOTED_IDENTIFIER的单引号和双引号行为:

    SET QUOTED_IDENTIFIER OFF 
        GO
        SELECT 'Rajendra' 
        GO
        SELECT "Rajendra"
    

    Both Select statements return similar output once we turn off the QUOTED_IDENTIFIER option:

    一旦我们关闭QUOTED_IDENTIFIER选项,两个Select语句都将返回相似的输出:

    Output of select statement with quotes

    In another example, we use previous Select statements with the QUOTE_INDENTIFIER ON:

    在另一个示例中,我们在QUOTE_INDENTIFIER ON上使用先前的Select语句:

    SET QUOTED_IDENTIFIER ON 
    GO
    SELECT 'Rajendra' 
    GO
    SELECT "Rajendra"
    

    We get an error message with the double-quotes. You can also see that SQL Server does not parse the double-quoted string. It cannot recognize the object and highlights the string with an underline:

    我们收到带有双引号的错误消息。 您还可以看到SQL Server不会解析双引号字符串。 它无法识别对象,并用下划线突出显示字符串:

    Output of an queery with single and double quotes

    Let’s look at a few complex examples with a combination of single and double quotes in a string:

    让我们看一些在字符串中结合使用单引号和双引号的复杂示例:

    SET QUOTED_IDENTIFIER OFF;
    GO
    SELECT '''Rajendra''';
    

    It contains three single quotes marks:

    它包含三个单引号:

    • SQL Server treats the first single quote as a string delimiter

      SQL Server将第一个单引号视为字符串定界符
    • It treats the second single quote as a part of the string

      它将第二个单引号视为字符串的一部分

    Multiple quotes
    SET QUOTED_IDENTIFIER ON;
    GO
    SELECT '''Rajendra''';
    

    Multiple single quotes

    Multiple single quotes error msg

    If we use a double quote and single quote together, it treats double quote as string delimiter and prints the other single quote. We can explore a few more commands to see the behavior of QUOTED_IDENTIFIER:

    如果我们同时使用双引号和单引号,它将双引号视为字符串定界符,并打印其他单引号。 我们可以探索更多命令来查看QUOTED_IDENTIFIER的行为:

    SET QUOTED_IDENTIFIER OFF;
    GO
    SELECT "'Rajendra '''' Gupta'";
    SELECT 'Rajendra '''' Gupta';
    SELECT '"Rajendra Gupta"';
    SELECT """Rajendra""";
    SELECT "Rajendra """" Gupta";
    GO
    

    Combination of single and double quotes
    SET QUOTED_IDENTIFIER ON;
    GO
    SELECT "'Rajendra '''' Gupta'";
    SELECT 'Rajendra '''' Gupta';
    SELECT '"Rajendra Gupta"';
    SELECT """Rajendra""";
    SELECT "Rajendra """" Gupta";
    GO
    

    Combination of quotes and SET QUOTED_IDENTIFIER

    明确使用QUOTED_IDENTIER识别对象 (Identify objects using QUOTED_IDENTIER explicitly)

    We can use sys.sql_modules to filter the results using the QUOTED_IDENTIFIER setting ON or OFF. It shows the objects in which we defined QUOTED_IDENTIFIER explicitly. It does not show the objects using the default behavior:

    我们可以使用QUOTED_IDENTIFIER设置为ON或OFF来使用sys.sql_modules过滤结果。 它显示了我们在其中明确定义QUOTED_IDENTIFIER的对象。 它不使用默认行为显示对象:

    • Query to find objects using QUOTED_IDENTIFIER ON

      使用QUOTED_IDENTIFIER ON查询查找对象

      SELECT OBJECT_NAME(object_id) 
          FROM sys.sql_modules 
          WHERE uses_quoted_identifier = 1
      
    • Query to find objects using QUOTED_IDENTIFIER OFF

      使用QUOTED_IDENTIFIER OFF查询以查找对象

      SELECT OBJECT_NAME(object_id) 
          FROM sys.sql_modules 
          WHERE uses_quoted_identifier = 0
      

    SSMS属性可控制QUOTED_IDENTIFIER (SSMS property to control QUOTED_IDENTIFIER )

    At the beginning of the article, we created a new stored procedure without specifying QUOTED_IDENTIFIER. Later, we generated the script, and it includes SET QUOTED_IDENTIFIER ON option.

    在本文的开头,我们创建了一个新的存储过程,但未指定QUOTED_IDENTIFIER。 稍后,我们生成了脚本,其中包括SET QUOTED_IDENTIFIER ON选项。

    We can control this behavior using SSMS settings. In SSMS, go to Tools -> Options.

    我们可以使用SSMS设置来控制此行为。 在SSMS中,转到工具->选项。

    It gives various options to control SSMS behavior such as environment details, query execution, query results behavior:

    它提供了各种选项来控制SSMS行为,例如环境详细信息,查询执行,查询结果行为:

    SSMS options

    It also has a search option in that we can filter out the required configuration. Search for keyword ANSI, and it gives you settings to control query execution behavior.

    它还有一个搜索选项,我们可以过滤出所需的配置。 搜索关键字ANSI,它为您提供了控制查询执行行为的设置。

    In this screenshot, we can see it has an option SET QUOTED_IDENTIFIER, and it is enabled. It is the default behavior of SQL Server:

    在此屏幕截图中,我们可以看到它具有选项SET QUOTED_IDENTIFIER,并且已启用。 这是SQL Server的默认行为:

    SSMS ANSI options

    If we want to turn off QUOTE_IDENIFIER, we can remove the tick from the checkbox:

    如果要关闭QUOTE_IDENIFIER,可以从复选框中删除勾号:

    Turn off SET QUOTED IDENTIFIER

    Click OK and restart the SSMS so that this setting can take effect. Let’s create the procedure [dbo].[SQLTest] again and generate the script for it. In the below screenshot, we can see that it has QUOTED_IDENTIFIER OFF now:

    单击“ 确定”,然后重新启动SSMS,以使此设置生效。 让我们再次创建过程[dbo]。[SQLTest]并为其生成脚本。 在下面的屏幕截图中,我们可以看到它现在已关闭QUOTED_IDENTIFIER:

    change default bahaviour of SSMS

    Note: If we change the QUOTED_IDENTIFIER option SSMS tools, it turns off the QUOTED_IDENTIFIER for all client session. You should be careful about modifying this option in the production environment.

    注意:如果我们更改QUOTED_IDENTIFIER选项SSMS工具,它将关闭所有客户端会话的QUOTED_IDENTIFIER。 您应该在生产环境中修改此选项时要小心。

    验证SSMS执行计划中的QUOTED_IDENTIFIER (Verify QUOTED_IDENTIFIER in the SSMS execution plan)

    We can use the SQL execution plan to view the current value of QUOTED_IDENTIFIER. Enable Actual execution plan before executing the query (shortcut key – CTRL+M):

    我们可以使用SQL执行计划来查看QUOTED_IDENTIFIER的当前值。 在执行查询之前启用实际执行计划(快捷键– CTRL + M):

    SET QUOTED_IDENTIFIER OFF;
    GO
        
    SELECT TOP (1000) [Firstname]
            ,[Lastname]
            ,[Country]
        FROM [DemoSQL].[dbo].[Employee]
    

    We executed this query by specifying QUOTE_INDENTIFIER value OFF, let’s view the execution plan. Under the execution plan properties, we can see the Set option and its current value in the query:

    我们通过将QUOTE_INDENTIFIER值指定为OFF来执行此查询,让我们查看执行计划。 在执行计划属性下,我们可以在查询中看到Set选项及其当前值:

    SSMS execution plan

    QUOTED_IDENTIFIER的快速摘要 (A quick summary of QUOTED_IDENTIFIER)

    Parameter

    QUOTED_IDENTIFIER ON

    QUOTED_IDENTIFIER OFF

    Behaviour

    Default

    Not default

    The string within double quotes

    It treats a string as an Identifier:

    SET QUOTED_IDENTIFIER ON
    GO
    SELECT "Rajendra"
     
    

    It gives the following error message:

    Msg 207, Level 16, State 1, Line 4 Invalid column name ‘Rajendra’.

    It treats the string as literal.

    This statement works fine:

    Use reserved keyword

    We can use a reserved keyword in the object name within double-quotes.

    We cannot use the reserved keyword. We get an error message – Incorrect syntax error (102, Level 15, State 1)

    Identify objects

    If we define explicitly QUOTED_IDENTIFIER value, we can find it using the following query:

    SELECT OBJECT_NAME(object_id) 
        FROM sys.sql_modules 
        WHERE uses_quoted_identifier = 1
    

    We can use the following query for finding objects with QUOTED_IDENTIFIER OFF:

    参数

    QUOTED_IDENTIFIER ON

    QUOTED_IDENTIFIER已关闭

    行为

    默认

    不默认

    双引号内的字符串

    它将字符串视为标识符:

    SET QUOTED_IDENTIFIER ON
     GO
     SELECT "Rajendra"

    它给出以下错误信息:

    消息207,级别16,状态1,第4行无效的列名称“ Rajendra”。

    它将字符串视为文字。

    该语句可以正常工作:

    使用保留关键字

    我们可以在双引号中的对象名称中使用保留关键字。

    我们不能使用reserved关键字。 我们收到一条错误消息–不正确的语法错误(102,级别15,状态1)

    识别物体

    如果我们显式定义QUOTED_IDENTIFIER值,则可以使用以下查询找到它:

    SELECT OBJECT_NAME(object_id) 
         FROM sys.sql_modules 
         WHERE uses_quoted_identifier = 1

    我们可以使用以下查询查找具有QUOTED_IDENTIFIER OFF的对象:

    结论 (Conclusion)

    This article gives an overview of the QUOTED_IDENTIFIER set option and its behavior in SQL Server queries with single and double-quotes. We should be careful while changing the default value. You should change as per requirement only.

    本文概述了QUOTED_IDENTIFIER设置选项及其在带单引号和双引号SQL Server查询中的行为。 更改默认值时应小心。 您仅应按要求进行更改。

    翻译自: https://www.sqlshack.com/set-quoted_identifier-settings-in-sql-server/

    展开全文
  • ..\Libraries\CMSIS\stm32f10x.h(474): error: #7: unrecognized token * @} ..\Libraries\CMSIS\stm32f10x.h(474): error: #40: expected an identifier * @} ..\Libraries\CMSIS\stm32f10x.h(488): error: #20: ...

    今天花了一个晚上去查错:

    以下是报错信息:

    *** Using Compiler 'V5.06 update 1 (build 61)', folder: 'F:\Keil\ARM\ARMCC\Bin'
    Rebuild target 'Target 1'
    assembling startup_stm32f10x_hd.s...
    compiling system_stm32f10x.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\CMSIS\system_stm32f10x.c: 0 warnings, 6 errors
    compiling core_cm3.c...
    compiling misc.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\misc.c: 0 warnings, 6 errors
    compiling stm32f10x_adc.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_adc.c: 0 warnings, 6 errors
    compiling stm32f10x_bkp.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_bkp.c: 0 warnings, 6 errors
    compiling stm32f10x_crc.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_crc.c: 0 warnings, 6 errors
    compiling stm32f10x_cec.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_cec.c: 0 warnings, 6 errors
    compiling stm32f10x_can.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_can.c: 0 warnings, 6 errors
    compiling stm32f10x_dbgmcu.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dbgmcu.c: 0 warnings, 6 errors
    compiling stm32f10x_dac.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dac.c: 0 warnings, 6 errors
    compiling stm32f10x_exti.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_exti.c: 0 warnings, 6 errors
    compiling stm32f10x_dma.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_dma.c: 0 warnings, 6 errors
    compiling stm32f10x_gpio.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_gpio.c: 0 warnings, 6 errors
    compiling stm32f10x_i2c.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_i2c.c: 0 warnings, 6 errors
    compiling stm32f10x_flash.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_flash.c: 0 warnings, 6 errors
    compiling stm32f10x_fsmc.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_fsmc.c: 0 warnings, 6 errors
    compiling stm32f10x_pwr.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_pwr.c: 0 warnings, 6 errors
    compiling stm32f10x_iwdg.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_iwdg.c: 0 warnings, 6 errors
    compiling stm32f10x_rcc.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rcc.c: 0 warnings, 6 errors
    compiling stm32f10x_rtc.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_rtc.c: 0 warnings, 6 errors
    compiling stm32f10x_spi.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_spi.c: 0 warnings, 6 errors
    compiling stm32f10x_sdio.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_sdio.c: 0 warnings, 6 errors
    compiling stm32f10x_tim.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_tim.c: 0 warnings, 6 errors
    compiling stm32f10x_usart.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_usart.c: 0 warnings, 6 errors
    compiling main.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\User\main.c: 0 warnings, 6 errors
    compiling stm32f10x_wwdg.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\Libraries\STM32F10x_StdPeriph_Driver\src\stm32f10x_wwdg.c: 0 warnings, 6 errors
    compiling stm32f10x_it.c...
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #7: unrecognized token
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(474): error:  #40: expected an identifier
        * @}
    ..\Libraries\CMSIS\stm32f10x.h(488): error:  #20: identifier "int8_t" is undefined
      typedef int8_t  s8;
    ..\Libraries\CMSIS\stm32f10x.h(492): error:  #20: identifier "int8_t" is undefined
      typedef const int8_t sc8;   /*!< Read Only */
    ..\Libraries\CMSIS\stm32f10x.h(496): error:  #20: identifier "int8_t" is undefined
      typedef 
    _IO int8_t   vs8;
    ..\Libraries\CMSIS\stm32f10x.h(500): error:  #20: identifier "int8_t" is undefined
      typedef 
    _I int8_t vsc8;   /*!< Read Only */
    ..\User\stm32f10x_it.c: 0 warnings, 6 errors
    ".\Objects\BH-F103.axf" - 156 Error(s), 0 Warning(s).
    Target not created.
    Build Time Elapsed:  00:00:10
    

    我一直将关注点放在了 identifier “int8_t” is undefined 上,
    实际上应该从第一行报错检查起。
    也就是
    …\Libraries\CMSIS\stm32f10x.h(474): error: #7: unrecognized token
    * @}
    将这个问题解决之后就没问题了。

    展开全文
  • Model Identifier iPhone iPhone1,1 iPhone 3G iPhone1,2 iPhone 3GS iPhone2,1 iPhone 4(GSM) iPhone3,1 iPhone3,2 iPhone 4(CDMA) iPhone3,3 iPhone 4s iPhone4,1 iPhone 5(GSM North America) ...
    Name (iPhone)Model Identifier
    iPhoneiPhone1,1
    iPhone 3GiPhone1,2
    iPhone 3GSiPhone2,1
    iPhone 4 (GSM)iPhone3,1 iPhone3,2
    iPhone 4 (CDMA)iPhone3,3
    iPhone 4siPhone4,1
    iPhone 5 (GSM North America)iPhone5,1
    iPhone 5 (GSM International)iPhone5,1
    iPhone 5 (GSM and CDMA)iPhone5,2
    iPhone 5 (China)iPhone5,2
    iPhone 5ciPhone5,3 (GSM/CDMA) iPhone5,4 (CDMA)
    iPhone 5siPhone6,1 (GSM) iPhone6,2 (GSM/CDMA)
    iPhone 6iPhone7,2
    iPhone 6 PlusiPhone7,1
    iPhone 6siPhone8,1
    iPhone 6s PlusiPhone8,2
    iPhone SEiPhone8,4
    iPhone 7iPhone9,1 iPhone9,3
    iPhone 7 PlusiPhone9,2 iPhone9,4
    iPhone 8iPhone10,1 iPhone10,4
    iPhone 8 PlusiPhone10,2 iPhone10,5
    iPhone XiPhone10,3 iPhone10,6
    iPhone XSiPhone11,2
    iPhone XS MaxiPhone11,6
    iPhone XRiPhone11,8
    iPhone 11iPhone12,1
    iPhone 11 ProiPhone12,3
    iPhone 11 Pro MaxiPhone12,5
    iPhone SE (2nd generation)iPhone12,8
    Name(touch)Model Identifier
    iPod touchiPod1,1
    iPod touch (2nd generation)iPod2,1
    iPod touch (3rd generation)iPod3,1
    iPod touch (4th generation)iPod4,1
    iPod touch (5th generation)iPod5,1
    iPod touch (5th generation, Mid 2013)iPod5,1
    iPod touch (6th generation)iPod7,1
    iPod touch (7th generation)iPod9,1
    Name(iPad)Model Identifier
    iPad (Wi-Fi)iPad1,1
    iPad (Wi-Fi + 3G)iPad1,1
    iPad 2 (Wi-Fi)iPad2,1 iPad2,4
    iPad 2 (Wi-Fi + 3G GSM)iPad2,2
    iPad 2 (Wi-Fi + 3G CDMA)iPad2,3
    iPad (3rd generation) (Wi-Fi)iPad3,1
    iPad (3rd generation) (Wi-Fi + Cellular)iPad3,3
    iPad (3rd generation) (Wi-Fi + Cellular Version)iPad3,2
    iPad (4th generation) (Wi-Fi)iPad3,4
    iPad (4th generation) (Wi-Fi + Cellular)iPad3,5
    iPad (4th generation) (Wi-Fi + Cellular MM)iPad3,6
    iPad mini (Wi-Fi)iPad2,5
    iPad mini (Wi-Fi + Cellular)iPad2,6
    iPad mini (Wi-Fi + Cellular MM)iPad2,7
    iPad Air (Wi-Fi)iPad4,1
    iPad Air (Wi-Fi + Cellular)iPad4,2
    iPad mini 2 (Wi-Fi)iPad4,4
    iPad mini 2 (Wi-Fi + Cellular)iPad4,5
    iPad Air 2 (Wi-Fi)iPad5,3
    iPad Air 2 (Wi-Fi + Cellular)iPad5,4
    iPad mini 3 (Wi-Fi)iPad4,7
    iPad mini 3 (Wi-Fi + Cellular)iPad4,8
    iPad mini 4 (Wi-Fi)iPad5,1
    iPad mini 4 (Wi-Fi + Cellular)iPad5,2
    iPad Pro (12.9-inch) (Wi-Fi)iPad6,7
    iPad Pro (12.9-inch) (Wi-Fi + Cellular)iPad6,8
    iPad Pro (9.7-inch) (Wi-Fi)iPad6,3
    iPad Pro (9.7-inch) (Wi-Fi + Cellular)iPad6,4
    iPad (5th generation) (Wi-Fi)iPad6,11
    iPad (5th generation) (Wi-Fi + Cellular)iPad6,12
    iPad Pro (10.5-inch) (Wi-Fi)iPad7,3
    iPad Pro (10.5-inch) (Wi-Fi + Cellular)iPad7,4
    iPad Pro (12.9-inch) (2nd generation) (Wi-Fi)iPad7,1
    iPad Pro (12.9-inch) (2nd generation) (Wi-Fi + Cellular)iPad7,2
    iPad (6th generation) (Wi-Fi)iPad7,5
    iPad (6th generation) (Wi-Fi + Cellular)iPad7,6
    iPad Pro (11-inch) (Wi-Fi)iPad8,1 (64, 256, 512 GB) iPad8,2 (1 TB)
    iPad Pro (11-inch) (Wi-Fi + Cellular)iPad8,3 (64, 256, 512 GB) iPad8,4 (1 TB)
    iPad Pro (12.9-inch) (3nd generation) (Wi-Fi)iPad8,5 (64, 256, 512 GB) iPad8,6 (1 TB)
    iPad Pro (12.9-inch) (3nd generation) (Wi-Fi + Cellular)iPad8,7 (64, 256, 512 GB) iPad8,8 (1 TB)
    iPad Air (3rd generation) (Wi-Fi)iPad11,3
    iPad Air (3rd generation) (Wi-Fi + Cellular)iPad11,4
    iPad mini (3th generation) (Wi-Fi)iPad11,1
    iPad mini (3th generation) (Wi-Fi + Cellular)iPad11,2
    iPad (7th generation) (Wi-Fi)iPad7,11
    iPad (7th generation) (Wi-Fi + Cellular)iPad7,12
    iPad Pro 11-inch (2nd generation) (Wi-Fi)iPad8,9
    iPad Pro 11-inch (2nd generation) (Wi-Fi + Cellular)iPad8,10
    iPad Pro (12.9-inch) (4nd generation) (Wi-Fi)iPad8,11
    iPad Pro (12.9-inch) (4nd generation) (Wi-Fi + Cellular)iPad8,12
    iPad (8th generation) (Wi-Fi)iPad11,6
    iPad (8th generation) (Wi-Fi + Cellular)iPad11,7

    注:获取到i386与x86_64时为Simulator(模拟器)

    获取方式

    #import "sys/utsname.h"
    
    - (NSString *)getModelIndentifier {
    	struct utsname systemInfo;
    	uname(&systemInfo);
    	NSString *modelIndentifier = [NSString stringWithCString:systemInfo.machine encoding:NSUTF8StringEncoding];
    	if ([modelIndentifier isEqualToString:@"i386"] || [modelIndentifier isEqualToString:@"x86_64"]) {
    		return @"Simulator";
    	} else {
    		return modelIndentifier;
    	}
    }
    
    展开全文
  • Python(二)常见问题(6):SyntaxError: invalid character in identifier 复制一条脚本命令时报错:   错误原因:在注释 # 之前夹杂了中文输入法的空格,在print缩进也有同样错误! 解决方法:删掉注释前...

    Python(二)常见问题(6):SyntaxError: invalid character in identifier

    复制一条脚本命令时报错:

     

    错误原因:在注释 # 之前夹杂了中文输入法的空格,在print缩进也有同样错误!

    解决方法:删掉注释前的空格即以后的注释即可

    展开全文
  • 主程序main.c 两个子功能源文件a.c,b.c 两个子功能头文件a.h,b.h 在子功能头文件a.h中...出现error #20: identifier "X" is undefined 如何实现子功能文件之间的变量调用?  </p>
  • identifier is too long 异常处理
  • 标识符( identifier)

    2020-12-06 15:41:43
    简单的说,凡是程序员自己命名的部分都可以称为标识符。 即给类、变量、方法、包等命名的字符序列,称为标识符。 1、标识符的命名规则(必须遵守) (1)Java的标识符只能使用26个英文字母大小写,0-9的数字,下划线...
  • error: identifier “AT_CHECK“ is undefined

    千次阅读 2021-01-28 13:58:17
    error: identifier “AT_CHECK” is undefined /home/nvidia/maskrcnn-benchmark/maskrcnn_benchmark/csrc/cuda/deform_pool_cuda.cu(68): error: identifier “AT_CHECK” is undefined 2 errors detected in the ...
  • npm i react-native-identifier或yarn add react-native-identifier GIFs 典型用法 可选的图像叠加 卧式仪表 脉冲卧式电表 用法示例 import { Identifier } from "react-native-identifier ... <Identifier ...
  • Invalid character in identifier

    万次阅读 2017-09-06 16:20:33
    Invalid character in identifier
  • invalid character in identifier 这个错误是我在写Python作业的时候遇到的,这句话的意思是标识符中有无效的字符 1.所以出现这个错误的原因之一是全角与半角的输入法选择错误 2.还有一个原因是在定义的方法中使用了...
  • triangle_identifier-源码

    2021-06-17 18:07:23
    Triangle Identifier 应用程序使用 JavaScript 和 jQuery。 它允许用户输入三个边的长度,并通过查看不同的长度输出您提交的三角形类型。 安装 通过首先克隆存储库来安装三角形标识符。 $ git clone ...
  • TS2300: Duplicate identifier问题的解决

    万次阅读 2019-11-01 11:53:03
    TS2300: Duplicate identifier问题的解决 Typescript编译时遇到d.ts中的定义冲突: tsc -p ./ ../../../../../Users/lusin/AppData/Roaming/npm/node_modules/typescript/lib/lib.es2015.iterable.d.ts:41:6 - error...
  • General->Signing&Capabilities
  • expect RPAREN, actual IDENTIFIER pos 375 line 19, column 50, token IDENTIFIER INTEGER 即使报错信息对结果无影响,但后台报错总感觉不舒服。。。。。!! 翻译: ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 238,095
精华内容 95,238
关键字:

identifier